1.

添加内容变化的通知响应事件:

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(textChanged:) name: UITextViewTextDidChangeNotification object:nil];

2 实现方法

- (void)textChanged:(NSNotification *)notification{
    
        if (self.textView.contentSize.height>45) {
            
            CGFloat textViewHeight=self.textView.contentSize.height;
            
            NSDictionary *dict =[[NSDictionary alloc]
                                 initWithObjectsAndKeys:@(textViewHeight+ViewHeight),@"textOne",nil];
            [[NSNotificationCenter defaultCenter]postNotificationName:NotificationAttitudeHeight object:nil userInfo:dict];
        }else{
            
            //        CGFloat textViewHeight=self.textView.contentSize.height;
            
            NSDictionary *dict =[[NSDictionary alloc]
                                 initWithObjectsAndKeys:@(50),@"textOne",nil];
            [[NSNotificationCenter defaultCenter]postNotificationName:NotificationAttitudeHeight object:nil userInfo:dict];
        }
}

还有一个地方需要注意,当你清空输入框时(_textView.text=@"";),不会自动触发textChanged:,你需要重写setText:方法来调用textChanged:。并且你清空textview后,你拿到的contentsize也不准确,所以还需要根据text是否为空来设定一个最小的高度。

调用setneedslayout

转载于:https://www.cnblogs.com/zhuxinyang/p/5113698.html

UITextView高度根据内容变化相关推荐

  1. python文本框随窗体变化_Javascript 文本框textarea高度随内容自适应增长收缩

    直接上代码: 方案一: 枫芸志 » 文本框textarea高度自适应增长/伸缩 晴枫制作 http://jb51.net [Ctrl+A 全选 注:引入外部Js需再刷新一下页面才能执行] 方案一在各浏 ...

  2. 【记录】用Javascript实现文本框textarea高度随内容自动适应增长收缩

    // 最小高度     var minRows = 5;     // 最大高度,超过则出现滚动条     var maxRows = 12;     function autoResize(){   ...

  3. input框的内容变化监听

    input的两个功能 1.不允许一开始输入空格(即在input框内容为空的时候,输入空格是没有作用的) 2.input框的内容变化监听 这属于比较完美的input的设计了 下面是html代码实现功能1 ...

  4. python监控网页内容变化_使用Python监控文件内容变化代码实例

    利用seek监控文件内容,并打印出变化内容: #/usr/bin/env python #-*- coding=utf-8 -*- pos = 0 while True: con = open(&qu ...

  5. jq 检测元素内html变化,jq 监听 textarea 元素内容变化的方法

    在前台是可以限制 textarea 元素内输入内容的长度的,当然是用 jquery 代码实现起来是最简单,方便的,JQ脚本通过对 textarea 元素内容变化的检测来判断内容是否超出指定的长度. j ...

  6. html怎样使整个页面居中,如何使整个页面内容居中使高度适应内容自动伸缩

    如何使整个页面内容居中使高度适应内容自动伸缩 发布时间:2013-08-06 15:13:43   作者:佚名   我要评论 如何使整个页面内容居中,如何使高度适应内容自动伸缩.这是学习CSS布局最常 ...

  7. css设置元素 网页高度自适应,css高度自适应如何实现?css高度根据内容自适应的简单方法...

    在进行网页开发时,可能会遇到这样的情况,网页中的内容会超出你原先设置的高度或者宽度,这时就需要实现高度自适应或者宽度自适应,下面这篇文章将给大家来介绍关于css高度自适应. PS:css宽度自适应的介 ...

  8. html中高度自动调整,css高度自适应如何实现?css高度根据内容自适应的简单方法...

    在进行网页开发时,可能会遇到这样的情况,网页中的内容会超出你原先设置的高度或者宽度,这时就需要实现高度自适应或者宽度自适应,下面这篇文章将给大家来介绍关于css高度自适应. PS:css宽度自适应的介 ...

  9. Qt设置label的文字自动换行、高度随内容调整、上下可滚动

    Qt初学者,想要用label控件实现一个用于显示文字信息的文本框,要求文字自动换行.label高度随内容调整.上下可滚动. 为了实现滚动,使用ScrollArea控件,将要显示文字的label放到这个 ...

最新文章

  1. office使用技巧
  2. Linux之复制、移动文件及目录命令
  3. python数据存储与读取_【Python爬虫】数据保存与读取
  4. python教程第四版pdf下载-笨办法学python 第四版 中文pdf高清版
  5. 2016年6月TIOBE编程语言排行榜:涨幅最大的名字很长
  6. python虚拟cpu性能_python实现可视化动态CPU性能监控
  7. IT人员看待和预防癌症十大建议
  8. linux打开mysql某张表_Linux——MySQL多表连接
  9. mysql - ERROR 1045 (28000): Access denied for user
  10. 二次型(求梯度) —— 公式的简化
  11. x-pack 功能介绍及配置传输层安全性(TLS / SSL)
  12. win7的配置要求详解
  13. ASP.NET Core的路由[2]:路由系统的核心对象——Router
  14. C++中类所占内存,父类与子类所占内存大小的关系(详细记忆)
  15. 搜索竞价推广方式OCPC VS CPC,谁更强
  16. Java中修饰变量和方法的关键字总结分析
  17. chemdraw20.0新功能及使用教程、安装教程
  18. 字符串中单词分别逆序
  19. 注册电子邮箱有哪些品牌?163VIP邮箱有什么好处?
  20. 话不多说 - 买点儿卖点儿(20220110)

热门文章

  1. linux进行主机发现,linux – 网络上所有计算机的主机名发现
  2. 域名管理系统 二级域名_域名系统简介
  3. python游戏结束显示分数代码_当游戏循环在Python中运行时,多线程来显示游戏分数?...
  4. Python组合数据类型之集合类型
  5. vue下实现textarea类似密码框的功能之探索input输入框keyup,keydown,input事件的触发顺序...
  6. [十九]JavaIO之PipedReader 和 PipedWriter
  7. Centos7更改root密码
  8. 《Adobe After Effects CC经典教程》——导读
  9. GlusterFS下如何修复裂脑文件?(续一)
  10. java学习笔记11--Annotation