【发布时间】:2013-01-30 12:19:14
【问题描述】:
原生 iOS Mail.app 有一个很棒的创建新字母的功能。整个屏幕是UIScrollView,写信正文的地方是UITextView,滚动被禁用。
当您键入此TextView 的高度以及UIScrollView 的高度时,UIScrollView 会向下滚动,在键盘上方留下一些像素以显示新文本。
我知道这个过程必须在 textViewDidChange 方法中完成,但在尝试做同样的事情时,我的代码出现了问题 - UITextField 有时可能会在 UIScrollView 下关闭。这是我尝试这样做的方法:
-(void)textViewDidChange:(UITextView *)textView {
CGRect frame = emailTextView.frame;
frame.size.height = emailTextView.contentSize.height;
emailTextView.frame = frame;
mainScrollView.contentSize = CGSizeMake(320, emailTextView.contentSize.height + rightKeyboardSize.height + 20);
}
关于这里出了什么问题的任何想法?提前致谢!
【问题讨论】:
标签: iphone ios objective-c cocoa-touch uiscrollview