在iOS6
:
观察: keyboardWillShow
已做出回应,textView
已滚动到顶部,我可以看到评论。事情进展顺利。
在iOS7
:
遵循以上两个步骤
观察: keyboardWillShow
没有响应。因此,虽然更改方向textView
不会滚动到顶部。
我应该为iOS7
添加任何新方法吗?
我的代码:
- (void)keyboardWillShow:(NSNotification *)note {
RSLogTrace();
self.textDecorator.isKeyboardSplit = NO;
CGRect keyboardBounds;
[[note.userInfo valueForKey:UIKeyboardFrameEndUserInfoKey] getValue:&keyboardBounds];
CGFloat keyboardHeight;
keyboardHeight = (UIInterfaceOrientationIsPortrait(self.interfaceOrientation)) ? keyboardBounds.size.height : keyboardBounds.size.width;
self.tableView.contentInset = UIEdgeInsetsMake(0.0, 0.0, keyboardHeight - 5, 0.0);
self.tableView.scrollIndicatorInsets = UIEdgeInsetsMake(0.0, 0.0, keyboardHeight, 0.0);
}
答案 0 :(得分:0)
根据您的评论,您在textViewDidBeginEditing:
内有滚动逻辑。
在这种情况下......如果您已开始在特定方向编辑textView
并在编辑时旋转屏幕,那么textViewDidBeginEditing:
代表在轮换后不会触发,因为从技术上讲,您已经开始在之前的方向编辑它。
将滚动条移动到顶部逻辑(,用于所需的textView
)到keyboardWillShow:
方法。
PS:当有疑问时,断点所有关键方法并查看流程如何