当键盘出现时,我正在尝试调整scrollvIEw的大小。我去了开发者文档,并发现了这些信息。
http://developer.apple.com/library/ios/#documentation/StringsTextFonts/Conceptual/TextAndWebiPhoneOS/KeyboardManagement/KeyboardManagement.html#//apple_ref/doc/uid/TP40009542-CH5-SW1
左侧“管理键盘”。
在文档中,它显示了一些代码来检测键盘的大小,然后调整UIScrollVIEw的大小。我已经在代码中放置了一个NSLog消息 – (voID)keyboarDWasShown:(NSNotification *)aNotification,所以我看到该函数实际上被调用,但是当我尝试到NSLog时,它的值总是为0 。
为什么苹果为此提供的代码不工作?
- (voID)keyboarDWasShown:(NSNotification*)aNotification{ NSDictionary* info = [aNotification userInfo]; CGSize kbSize = [[info objectForKey:UIKeyboardFrameBeginUserInfoKey] CGRectValue].size; UIEdgeInsets contentInsets = UIEdgeInsetsMake(0.0,0.0,kbSize.height,0.0); scrollVIEw.contentInset = contentInsets; scrollVIEw.scrollindicatorInsets = contentInsets; // If active text fIEld is hIDden by keyboard,scroll it so it's visible // Your application might not need or want this behavior. CGRect aRect = self.vIEw.frame; aRect.size.height -= kbSize.height; if (!CGRectContainsPoint(aRect,activeFIEld.frame.origin) ) { CGPoint scrollPoint = CGPointMake(0.0,activeFIEld.frame.origin.y-kbSize.height); [scrollVIEw setContentOffset:scrollPoint animated:YES]; }}解决方法 您可能想尝试强烈推荐的“TPKeyboardAvoIDingScrollVIEw”,可从: https://github.com/michaeltyson/TPKeyboardAvoiding获取
奇迹般有效…
总结以上是内存溢出为你收集整理的iphone – 当键盘到位时移动UIScrollView全部内容,希望文章能够帮你解决iphone – 当键盘到位时移动UIScrollView所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)