2010-01-20 80 views
2

我正在研究使用核心数据的iPhone应用程序。其中一个视图控制器允许用户编辑有关咖啡的信息,并且它有一个UITextField,用户可以在其中输入一个咖啡类型的描述性“标签”。UITextField - 在键盘和UIPickerView之间切换

我想设置UITextField显示键盘,如果用户点击进入UITextField的主区域(输入一个新的标签),并使用一个按钮作为它的右视图来显示UIPickerView,这将允许用户可以从已经进入具有已知标签的列表,选择即:

--------------------------------------------- 
|This area should display keyboard | button | 
--------------------------------------------- 

我很困惑什么的是如何来回切换的firstResponder键盘和UIPickerView,然后再返回,如果之间用户来回点击。

肯定有人在那里已经做到了这一点,所以对如何设置此任何提示(或者,如果我正确地使用iPhone的UI元素)将是巨大的!谢谢!

回答

0

这是关于如何自定义键盘的article。请记住,您不能彻底声明自己的UIKeyboard实例,也不能将其子类化,所以您唯一的希望就是找到键盘视图并从那里进行修改。

0

对于键盘,你要留心becomeFirstResponder/resignFirstResponder的委托回调。无论你做什么或完成你的隐喻是你应该辞职的地方。

1

您可以使用诸如2个引用跟踪您的活动文本字段和采摘:

UITextField *activeField; 
UIPickerView *activePicker; 

每当一个文本字段开始编辑,您分配activeField指向它。采撷者也是如此。我还会假设你已经对这个特殊的文本字段有了一个参考。

现在,在事件处理程序的文本字段选择器视图,您可以控制文本字段开始/结束的编辑,也是选择器视图时出现/消失的时候会发生什么。如果您有其他文本字段,那么您需要通过将特殊文本字段与我们的活动字段进行比较来检查该事件是否由特殊文本字段触发。

我需要提醒你,尽管该标记的场景在联系人应用程序中的实现方式不同。这是标准的方式,对你来说也更容易。

相关问题