zoukankan      html  css  js  c++  java
  • UITextView自适应高度(很奇怪...)

    做项目的时候经常遇到的一个问题就是文本高度处理,以前用的UILabel来显示文本,这样需要根据文本来计算UILabel的高度

    实际上,使用UITextView来显示文本,不需要来计算文本的高度,文本即可自适应高度,而UITextView的文本自适应高度是

    一个很奇怪的现象。代码如下:

        UITextView *textView = [[UITextView alloc] initWithFrame:CGRectMake(0, 0, 200, 20)];
        [self.view addSubview:textView];//写在这里,UITextView可以自适应高度
        textView.text = @"丙烯酸是化学式为C3H4O2的有机化合物,是最简单的不饱和羧酸,由一个乙烯基和一个羧基组成。纯的丙烯酸是无色澄清液体,带有特征的刺激性气味。它可与水、醇、醚和氯仿互溶,是由从炼油厂得到的丙烯制备的。[1]";
        CGSize size = textView.contentSize;
        textView.frame = CGRectMake(0, 0,size.width, size.height);

    注意红色标记的代码的位置,这句代码如果放在这个地方,文本就能自适应高度,如果写在末尾,则不能自适应高度,取而代之

    的是出现滚动条来显示文本,但是UITextView的高度不会改变,代码如下:

        UITextView *textView = [[UITextView alloc] initWithFrame:CGRectMake(0, 0, 200, 20)];
    //    [self.view addSubview:textView];
        textView.text = @"丙烯酸是化学式为C3H4O2的有机化合物,是最简单的不饱和羧酸,由一个乙烯基和一个羧基组成。纯的丙烯酸是无色澄清液体,带有特征的刺激性气味。它可与水、醇、醚和氯仿互溶,是由从炼油厂得到的丙烯制备的。[1]";
        CGSize size = textView.contentSize;
        textView.frame = CGRectMake(0, 0,size.width, size.height);
        [self.view addSubview:textView];//写在这里,UITextView不能自适应高度
  • 相关阅读:
    mysql BETWEEN操作符 语法
    mysql IN操作符 语法
    mysql LIKE通配符 语法
    mysql TOP语句 语法
    mysql DELETE语句 语法
    mysql Update语句 语法
    mysql INSERT语句 语法
    mysql ORDER BY语句 语法
    mysql OR运算符 语法
    mysql AND运算符 语法
  • 原文地址:https://www.cnblogs.com/benbenzhu/p/3095289.html
Copyright © 2011-2022 走看看