如何在iOS(Xamarin C#)游戏中dynamicpopup和隐藏UIPickerView?

我已经看到了一个很好的例子,在以下位置实现UIPickerView

捡取器在Xamarin.iOS可用

不过,我的情况稍微复杂一点,因为我不想不断地在屏幕上显示select器。 相反,我想根据需要dynamic显示和隐藏我的游戏中的选取器。

具体来说,这是我想要实现的:

(A)首先,在我的游戏画面上,当用户点击一个名为“ select背景颜色 ”的button时,我将需要popup一个显示3个值的选取器: 红色,蓝色和绿色

(B)接下来,用户可以滚动select器内的颜色列表,并select这三种颜色中的任何一种。

(三)用户正式select颜色后,我需要closures(或隐藏)select器从屏幕上。

(D)最后,我将显示步骤(C)中用户select的颜色。


我觉得我可以轻松地实施步骤(D)。 但是,我的主要问题是:在步骤(C)中,我们如何知道用户何时完成select颜色,以便dynamic地隐藏选取器? 用户可以多次来回滚动查看所有3种颜色,因此,可能很难知道用户何时最终做出select。

还是有理由期望用户完成select颜色后,他们会点击select器外的任何空间? 这是标准的行为吗?

或者,而不是使用捡拾器,我应该写我自己的定制“无线电button” ? (不幸的是,iOS没有标准的单选button,因此devise我自己定制的单选button控件会花费很多时间…)或者,您能推荐另一个iOS标准控件吗?

我将非常感谢您对我的问题的回答,或对如何解决我的技术问题的build议。

此外,如果你可以给我演示步骤(C)或(A)和(B)和(D)的任何示例代码,我也非常感激。 主要是我不知道如何处理步骤(C),这是我的问题的主要观点。

顺便说一句,我只能用Xamarin.iOS在C#中编写代码。 所以,如果你能用C#展示我的代码,那将是非常棒的。

非常感谢。