键盘出现时如何滚动 UITableviewcell 向上滚动? [复制]
Posted
技术标签:
【中文标题】键盘出现时如何滚动 UITableviewcell 向上滚动? [复制]【英文标题】:How to scroll the UITableviewcell scroll up when the keyboard appears? [duplicate] 【发布时间】:2012-01-10 10:39:27 【问题描述】:可能重复:Table View scroll when text field begin editing iphone
我在 UITableview 中加载了许多 UITextField。最多我在 UITableView 单元格中有 15 个 UITextFields。当键盘/UIActionSheet(UIPickerView) 出现时,我想向上移动(滚动)单元格。请建议/指导我任何示例代码来解决这个问题。提前致谢。
【问题讨论】:
感谢所有朋友回答我的问题并解惑。非常感谢。 【参考方案1】:您可以使用示例代码来获得一些提示。
https://github.com/michaeltyson/TPKeyboardAvoiding
我也在我的项目中使用过它。希望它有所帮助
【讨论】:
很容易在这个项目中使用 TableView 子类来让我的表格在键盘打开时正确滚动。 谢谢!那东西应该被添加到 pod 中!【参考方案2】:请在-textFieldShouldBeginEditing
中尝试以下代码 ....
self.tblView.frame= CGRectMake(self.tblView.frame.origin.x, self.tblView.frame.origin.y, self.tblView.frame.size.width, self.tblView.frame.size.height - 190);
NSIndexPath *indexPath =[NSIndexPath indexPathForRow:nIndex inSection:nSectionIndex];
[self.tblView scrollToRowAtIndexPath:indexPath atScrollPosition:UITableViewScrollPositionTop animated:YES];
谢谢
【讨论】:
谢谢 Mitesh Khatri 先生。它工作得很好。非常感谢。 什么是nIndex和nSectionIndex? nIndex 是行号或整数值。 这不是一个好的答案,因为假设您要编辑的行在最后一行。 scrollToRowAtIndexPath 不能以这种方式工作 @justicepenny,你对最后一行的建议是什么?请帮忙。【参考方案3】:从苹果文档中查看下面的链接,其中包含完整的解释和所需的代码
他们已经讨论了注册键盘出现和消失通知,并在通知方法中更改您的底层UIView
的矩形以获取更多信息,请访问以下网址。
Moving Content That Is Located Under the Keyboard
【讨论】:
以上是关于键盘出现时如何滚动 UITableviewcell 向上滚动? [复制]的主要内容,如果未能解决你的问题,请参考以下文章
tableview 中的两个 TextFields,都在滚动视图上,当键盘出现 iPhone 时消失
如何使键盘直接出现在 UITableViewCell 的文本字段中
包含UITextfield的UITableviewcell在滚动UITableviewcontroller时隐藏