HTML5   发布时间:2022-04-27  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了以编程方式创建的UITextView不再使用iOS 9滚动大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
以下代码以编程方式创建一个文本视图,该文本视图在文本超出设备屏幕高度时滚动.代码在iOS 7和iOS 8中没有问题.但是,文本字段不再使用相同代码的iOS 9滚动.通过几个小时的尝试找到修复,这个问题非常令人沮丧,所以我非常感谢任何帮助.提前致谢.这是代码

- (void)createTextView

{

//1. Create the text storage that BACks the editor.
NSDictionary *attrs = @{NSFontAttributename: [UIFont preferredFontForTextStyle:UIFontTextStyleBody]};
NSAttributedString *attrString = [[NSAttributedString alloc] initWithString:notesAndReference attributes:attrs];
_textStorage = [[SyntaxHighlightTextStorage alloc] init];
[_textStorage appendAttributedString:attrString];

CGRect newTextViewRect = self.view.bounds;

//2. Create the layout manager.
NSLayoutManager *layoutManager = [[NSLayoutManager alloc] init];

//3. Create a text container.
CGSize containerSize = CGSizeMake(newTextViewRect.size.width,CGFLOAT_MAX);
NSTextContainer *container = [[NSTextContainer alloc] initWithSize:containerSize];
container.widthTracksTextView = YES;
[layoutManager addTextContainer:container];
[_textStorage addLayoutManager:layoutManager];

//4. Create a UITextView.
textView = [[UITextView alloc] initWithFrame:newTextViewRect textContainer:container];
textView.scrollEnabled = YES;
textView.editable = YES;
textView.delegate = self;
[self.view addSubview:textView];

}

解决方法

在尝试了几个小时来解决这个问题后,我终于添加了一行代码来禁用滚动,然后重新启用它,这解决了问题!滚动现在可以像以前一样工作.正如我在原始问题中提到的,代码适用于iOS 7和iOS 8,但现在不适用于iOS 9,因此不确定此问题是否代表了错误或预期行为的变化.任何@L_450_13@都会受到欢迎.谢谢.这是修复:

textView.scrollEnabled = NO;
 textView.scrollEnabled = YES;

大佬总结

以上是大佬教程为你收集整理的以编程方式创建的UITextView不再使用iOS 9滚动全部内容,希望文章能够帮你解决以编程方式创建的UITextView不再使用iOS 9滚动所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。