我有一个UITableViewController的自定义子类,它在表中有一个可编辑的单元格。我使用UITableViewController,因为我得到了所有漂亮的代码,当键盘免费显示时,它会移动单元格。
对于我的一个单元格类型,我有一个UIPicker代替键盘。一切运作良好,我有一个很好的动画,可以像键盘一样滑入和滑出。问题是,因为我将选择器作为子视图添加到UITableViewController的视图属性中,用户可以上下滚动UIPicker。
我理解为什么会发生这种情况(我假设视图属性被分配给viewController的tableView属性,因此我的选择器被添加到tableView的顶部,其中滚动视图作为其父视图)。我不确定的是最好的/推荐的方式。
我尝试将选择器添加到UIViewController视图的superView但没有骰子:
[myViewController.view.superView addSubView:myPicker];
我仍然希望保留所有漂亮的键盘效果,但希望我的选择器表现得像键盘一样,向上滑动并保持固定位置,然后在完成后滑开。
非常感谢任何帮助。
戴夫
答案 0 :(得分:2)
如果您使用UITextView作为UIPicker,您可以尝试使用“inputView”,iOS将为您管理动画和视图层次结构。
您也可以随时创建一个包含UIView,其中包含TableViewController的View属性并将UIPicker添加给他。
祝你好运答案 1 :(得分:1)
解决这个问题的一种方法是创建一个UIActionSheet
的子类,其中包含一个选择器,并在需要时显示actionSheet。至少这是我在类似情况下所做的。