使用下面的代码,我将来自plist的文本放到textView中。 textView尚未成为firstresponder;该文本最初仅供阅读。在iOS4中,goToEndOfNote代码将光标定位在文本的末尾,并滚动到该位置。在3.1.3中,直到触摸屏幕(除非需要更改或添加都不需要)才能滚动到结尾,从而使textView成为firstresponder。我希望它能像4.0中那样在3.1.3中工作。请任何想法。谢谢。将光标定位到uitextview中的文本末尾,并滚动到位置
...
self.temp = [[[NSMutableArray alloc] initWithContentsOfFile:myPlistPath] autorelease];
self.textView.text = [self.temp objectAtIndex:0];
[self goToEndOfNote];
//[self performSelector:@selector(goToEndOfNote) withObject:nil afterDelay:0.1];
}
- (void) goToEndOfNote {
NSUInteger length = self.textView.text.length;
self.textView.selectedRange = NSMakeRange(length, 0);
}
几乎但不完全。文本视图是屏幕的大部分。在4.0中add'l行[textView setContentOffset:CGPointMake(0,length)animated:YES];导致最后一个字符滚动到textView(good)的底部。在3.1.3中,它导致最后一个字符滚动到屏幕上的中间位置(ok),但在两个操作系统版本中,如果屏幕上只有1或2行,它们会从屏幕上滚动(不是这样)好)。我希望滚动只能在screenful出现后才能启动(因为它在4.0中只有我的方法中的两条原始行)。 – 2010-09-07 18:49:00