如何使用 UIPickerView 在一个视图中填充不同的文本字段?

Posted

技术标签:

【中文标题】如何使用 UIPickerView 在一个视图中填充不同的文本字段?【英文标题】:How to use UIPickerView to populate different textfields in one view? 【发布时间】:2012-07-21 16:34:31 【问题描述】:

我有一个包含 8 个文本字段的视图。我希望每个文本字段都与具有不同项目的选择器视图相关联。这个选择器视图应该填充每个文本字段。

当我单击文本字段时,它应该显示pickerview 和与之关联的项目,当我为该文本字段选择项目时,它应该关闭pickerview。然后当我再次单击下一个文本字段时,它应该显示带有该文本字段项目的选择器视图,依此类推...

有可能吗?我是 xcode 的新手。任何帮助深表感谢。谢谢。

【问题讨论】:

【参考方案1】:

绝对有可能。这是我最好的建议:

    创建 8 个数组 - 每个选择器视图一个。在这些数组中,包含用户应该能够从中选择的选项。这可以通过NSArray 轻松完成。 在 Interface Builder 中设置文本字段(即在 Storyboard 文件中),并将每个文本字段中的 IBAction 连接到视图控制器代码中的函数。 在每个函数中,实例化一个新的UIPickerView,其中包含与当前选择器相对应的数组内容。 用户选择项目后,将文本字段的内容设置为包含在选择器所选索引内的数组值。 从当前视图中移除选择器。

由于我在这里您是 Xcode 的新手,如果您需要任何其他解释,请告诉我。

顺便说一句,这是UIPickerView 的类参考: http://developer.apple.com/library/ios/#documentation/uikit/reference/UIPickerView_Class/Reference/UIPickerView.html

更新:在点击文本字段时触发的函数中,分配并实例化选择器。 然后,将其添加到您的视图中。之后,当用户完成选择后,只需将其从视图中移除即可。

【讨论】:

非常感谢!如果我有任何问题,我会这样做并回来。您还可以告诉我如何最初隐藏pickerview并仅在单击文本字段时显示它吗? 谢谢,能否请您发布一个 IBAction 的一个功能的示例代码?我觉得很难做到? 我看到你已经接受了我的回答。您还想要示例代码吗? 不,谢谢。我可以部分使用您的解决方案。谢谢! 很抱歉评论一个较旧的线程,但@TheKraken 你介意为了我的利益发布该示例代码吗?谢谢!

以上是关于如何使用 UIPickerView 在一个视图中填充不同的文本字段?的主要内容,如果未能解决你的问题,请参考以下文章

如何在使用 UIPickerView 时禁用视图

如何使用 monotouch 在 uitableviewcell 中添加 uipickerview 作为子视图?

如何在 iOS 应用程序中通过 UIPickerView 实现视图之间的转换?

在 UIPickerView 上选择行时如何使用信息填充第二个视图控制器

在这种情况下,如何重用 UIPickerView 中的视图?

ios/uipickerview:我如何获得美国各州的选择器视图