2011-10-11 71 views
4

我想要做的事:iPhone:我可以让一个UIDatePicker出现在UIKeyboard的顶部吗?

我有一个标准的UITableView,有几个UITextFields和几个细胞显示时间/日期。基本上,这是一种用户可以输入文本和日期的表单。

它是如何打算工作:

  • 起初,无论是键盘或日期选择器中。
  • 如果先选择文本字段,则弹出键盘。日期选取器(弹出类似的动画)反之亦然。
  • 如果最初选择了文本字段,然后用户选择时间单元格,则UIKayboard应该变成日期选择器(无动画)。同样,当另一种方式应该发生。

什么是不工作:

一切的伟大工程 - 除了最后一步,我上面列出。基本上,我无法弄清楚如何在键盘的顶部上提供任何东西

我的方法只是同时为键盘/日期同时设置动画,但相应地为日期选取器设置'hidden'属性。

-

任何关于如何在键盘前添加东西的想法?在添加键盘后,我可以创建另一个窗口吗?或者,使用accessoryView属性,但以某种方式转置框架?

否则,有没有其他方法可以实现我最初的目标?

谢谢:)

回答

8

甚至比监听键盘通告容易是要认识到UITextFieldUIResponder一个子类,这意味着它有一个inputView属性。您可以简单地创建一个UIDatePicker,将其设置为您的文本框的inputView,然后就完成了。 (加上你需要做的任何事情才能真正从提取器中提取日期)。

这种方法唯一的缺点是,虽然它对iPhone上的人像定位非常有效,但您需要做一些工作,让它们在横向和iPad上看起来很合适。但是,无论如何,这都是你必须做的。

+0

谢谢 - 这是一个更简单,更干净的解决方案,适用于我想要的功能。 –

+0

实际上使它在横向工作只是设置UIDatePicker的自动识别掩码。 – geekinit

相关问题