使用UITextField的UIPicker

时间:2012-06-30 10:19:47

标签: objective-c ios xcode uitextfield uipickerview

我做了一个研究,这里的所有帖子对这个问题都非常不满。 我想按下UITextField时使用UIPicker。 我会逐步指出一步一步的指南。

我在这里尝试了所有帖子但是每个帖子只给我一部分我需要的东西,我似乎无法将它们连接在一起。

这是我申请的最后一部分,我很疯狂地完成它..

先谢谢你了!

半乳糖

3 个答案:

答案 0 :(得分:1)

有一个 inputAccessoryView 属性,其中包含一个视图,而不是屏幕底部的键盘。创建UIPicker,调整其框架,提供值并将其分配给inputAccessoryView属性。

当用户点击你的UITextField时会出现UIPicker。

如果您不需要编辑,可以使用UILabel而不是UITextField。解决方案是一样的。如果你需要,我有一个现成的课程。

答案 1 :(得分:1)

这是一种方式:

http://www.youtube.com/watch?v=t_F1ex5opgA&t=14m10s

-(BOOL)textfieldShouldBeginEditing:(UITextField *)textField
  • 其中textField是文本字段的名称。

调用UIPickerView并返回NO,以便加载选择器而不是键盘。

答案 2 :(得分:0)

这个想法是在用户点击UITextField时调用一个打开UIPicker的动作。因为UITextField没有响应UIButtons响应的常见touchUpInside事件,所以我只是在UITextField的顶部覆盖一个透明的UIButton,以防万一,使文本字段的userInteractionEnabled属性为NO。钩住UIButton以响应touchUpInside并调用打开UIPicker的方法。另一个选择是通过实现“textFieldShouldBeginEditing”并立即重新签名文本字段来立即响应文本字段的触摸。

下一步是展示UIPicker - 如果我们谈论iPad,最好通过使用UIPopoverController来完成。在iPhone上,也许可以考虑以模态方式提出它。当您创建包含此UIPicker的视图控制器时,请确保向其添加委托属性,以便在选择器上选择的任何值都可以传输回主视图控制器和UITextField。

希望这有助于您入门。