如何让自定义 UITableView 自动滚动到选定的文本字段?
我有一个 UITableView,我通过自定义 UIViewController 控制它。当用户单击“添加”按钮时,我向 UITableView
添加一行,其中包含一个文本字段,并使其成为第一响应者。问题是,当表格底部不可见(或被键盘隐藏)时,UITableView
不会滚动以使文本字段进入视图。
UITableViewController
自动执行此操作,但我的视图控制器不能是 UITableViewController
的子类。
I have a UITableView
, which I am controlling from a custom UIViewController
. When the user clicks the 'add' button, I add a row to the UITableView
with a text field in it, and make it the first responder. The problem is, when the bottom of the table is out of view (or hidden by the keyboard), the UITableView
doesn't scroll to bring the text field into view.
UITableViewController
does this automatically, but my View Controller can't be a subclass of UITableViewController
.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
当键盘出现或消失时,我通过在
UITableView
上旋转contentInset
来修复此问题。当您加载
UITableView
时调用registerForKeyboardNotifications
,其他一切都应该正常工作。I fixed this by twiddling
contentInset
on theUITableView
when the keyboard appears or disappears.call
registerForKeyboardNotifications
when you load theUITableView
, and everything else should Just Work.我发现
-scrollToRowAtIndexPath:atScrollPosition:animated:
并猜测这会做你想要的。I found
-scrollToRowAtIndexPath:atScrollPosition:animated:
and guess this would do what you want.我遇到了类似的问题,这是我的解决方案: http://www.passiondeveloper.com/discussion/8/uitableview-inline-editing-with-a-textfield-inside-uitableview-not-scrolling-when-keyboard -显示
I faced a similar problem, here's my soln: http://www.passiondeveloper.com/discussion/8/uitableview-inline-editing-with-a-textfield-inside-uitableview-not-scrolling-when-keyboard-is-shown
适用于ios5
work for ios5