iOS   发布时间:2022-03-30  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了根据内容的UITextView高度在iOS 9中是错误的大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我通过编程动态地将视图添加到具有布局约束的scrollview中.对于文本视图组件,我想根据textview中设置的文本设置高度约束,所以我创建了扩展UITextView的类.在文本视图类中,我编写了以下代码添加高度约束.

#import "CETextView.h"

@implementation CETextView

- (void)layoutSubviews
{
    [super layoutSubviews];

    if (!self.heightConsTraint)
    {
        self.heightConsTraint =  [NSLayoutConsTraint consTraintWithItem:self attribute:NSLayoutAttributeHeight relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:1.0 constant:100];
        [self addConsTraint:self.heightconstraint];
    }
    CGRect lRect = [self contentSizeRect];

    CGSize descriptionSize = lRect.size;
    self.heightConsTraint.constant = descriptionSize.height;

}

- (CGRect)contentSizeRect
{
    NSTextContainer* textContainer = [self textContainer];
    NSLayoutManager* layoutManager = [self layoutManager];
    [layoutManager ensureLayoutForTextContainer: textContainer];
    CGRect lRect = CGRectMake(0,320,500);
    lRect.size = self.contentSize;
    lRect.size.height = lRect.size.height + 5;
    return lRect;
}


@end

代码在iOS 8.0中提供了正确的高度,但在iOS 9.0中提供了错误的高度.我查了苹果doc for iOS 9.0的新版本,还有一些与自动布局有关的变化.

任何帮助表示赞赏.

@R_502_1964@

不确定你是否解决了这个问题,但是我把头撞到了墙上几个小时,直到我确定为我试图调整大小的UITextViews启用了滚动设置为YEs.不确定这是否能解决您的问题,似乎略有不同.

iOS 8调整高度很好,启用滚动设置为NO,但如果启用滚动为NO,则iOS 9将不会调整高度约束.我刚刚在我的所有文本视图中检查了故事板中的框,之后重新调整了所有内容.

大佬总结

以上是大佬教程为你收集整理的根据内容的UITextView高度在iOS 9中是错误的全部内容,希望文章能够帮你解决根据内容的UITextView高度在iOS 9中是错误的所遇到的程序开发问题。

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

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