Iphone-涂抹视图和文本的滚动视图

Iphone-涂抹视图和文本的滚动视图,iphone,objective-c,cocoa-touch,uikit,uiscrollview,Iphone,Objective C,Cocoa Touch,Uikit,Uiscrollview,我注册了keyboard show事件,并实现了如下方法: -(void) KeyboardDidShow:(NSNotification*)notif{ if (KeyboardVisible) { NSLog(@"Keyboard is already visible"); return; } NSDictionary* info = [notif userInfo]; NSValue* value = [info objectForKey:UIKeyboardBou

我注册了keyboard show事件,并实现了如下方法:

-(void) KeyboardDidShow:(NSNotification*)notif{

 if (KeyboardVisible)
 {
  NSLog(@"Keyboard is already visible");
  return;
 }

 NSDictionary* info = [notif userInfo];

 NSValue* value = [info objectForKey:UIKeyboardBoundsUserInfoKey];
 CGSize keyboardSize = [value CGRectValue].size;

 CGRect ViewFrame = self.view.frame;
 ViewFrame.size.height-=keyboardSize.height;

 scrollView.frame = ViewFrame;
 KeyboardVisible = YES; 

}
在我的视图中,我有两个文本视图。 我的问题是: 当我将光标放在textView中,键盘弹出时,如果我上下使用视图光标,所有文本都会被涂抹,看起来就像两个textView的混合。 这个代码有什么问题吗?(实际上是从我正在读的一本书中摘取的)。
值得一提的是,最初视图是在没有滚动的情况下实现的,然后使用“在滚动视图中嵌入对象”命令添加了滚动功能。

self.view
滚动视图
相同吗?您可能应该使用滚动视图的框架作为更改的起点:

CGRect ViewFrame = scrollView.frame;
而不是

CGRect ViewFrame = self.view.frame;

还要仔细检查xib文件,确保两个文本视图都是滚动视图的子视图,而不是同级视图。也许您只嵌入了一个文本视图?

Nope-man。所有文本视图实际上都是滚动视图的子视图,滚动视图是主视图的子视图。尝试执行u建议的操作(使用滚动视图框架)但无效。其他建议?Idan,您是否将
CALayer
(或其子类)与
shouldRasterize=YES
一起使用?我这样做了,当在
UIScrollView
中滚动这些层时,它产生了涂抹效果。