Tag: ios7 nslayoutmanager

UITextView的contentSize更改和iOS7中的NSLayoutManager

问题:在某些情况下, UITextView默默地改变它的contentSize 。 最简单的情况下textView与大文本和键盘。 只需添加UITextViewsockets,并设置- viewDidLoad为: – (void)viewDidLoad { [super viewDidLoad]; // expand default "Lorem…" _textView.text = [NSString stringWithFormat:@"1%@\n\n2%@\n\n3%@\n\n4%@\n\n5", _textView.text, _textView.text, _textView.text, _textView.text]; _textView.keyboardDismissMode = UIScrollViewKeyboardDismissModeInteractive; _textView.contentInset = UIEdgeInsetsMake(0, 0, 216, 0); } 现在显示和隐藏键盘会在某些情况下导致文本跳转。 我发现了通过子类UITextView跳转的原因。 我的子类中唯一的方法是: – (void)setContentSize:(CGSize)contentSize { NSLog(@"CS: %@", NSStringFromCGSize(contentSize)); [super setContentSize:contentSize]; } 它显示contentSize缩小和扩展键盘隐藏。 像这样的东西: 013-09-16 14:40:27.305 textView-bug2[11087:a0b] CS: {320, 651} 2013-09-16 14:40:27.313 […]