UITableViewController滚动默认行为

时间:2014-07-02 15:00:00

标签: ios xcode uitableview uiscrollview uitextview

我在单元格中使用带有textField和text视图的UITableviewController。默认情况下,当我点击文本字段时,tableviewcontroller会滚动内容,让我查看字段的内容。这个默认行为非常有用,但是当我编辑textView时,我已经实现了带有完成按钮(inputAccessoryView)的工具栏。当我从编辑textField切换到编辑textView时,这是一个问题,因为键盘的工具栏正好在textView上面。

我尝试过很多解决方案,但对我来说没什么用。我试过这样的事情:https://developer.apple.com/library/ios/documentation/StringsTextFonts/Conceptual/TextAndWebiPhoneOS/KeyboardManagement/KeyboardManagement.html

但对我不起作用,因为我认为这种行为已在UITableViewController中实现。

PS:UITableViewController是使用Interface Builder创建的。我不知道这些信息是否有用。

1 个答案:

答案 0 :(得分:0)

如果您设置UITableViewController以实现UITextViewDelegate协议,那么您可以通过实现此方法知道何时开始编辑textView:

- (void)textViewDidBeginEditing:(UITextView *)textView
{ 
     //then you can scroll the tableview up so you can see the textView 
     [self.tableView setContentOffset:CGPointMake(0, /*height of your toolbar*/) animated:YES];
}