UITextView作为内容文本输入区域,有的时候我们需要根据内容动态改变文本区域的高度,效果如下:

定义UITextView,实现UITextViewDelegate:

  1. -(UITextView *)textView{
  2. if (!_textView) {
  3. //http://www.cnblogs.com/xiaofeixiang/
  4. _textView=[[UITextView alloc]initWithFrame:CGRectMake(30, 200, CGRectGetWidth([[UIScreen mainScreen] bounds])-60, 30)];
  5. [_textView setTextColor:[UIColor redColor]];
  6. [_textView.layer setBorderColor:[[UIColor blackColor] CGColor]];
  7. [_textView setFont:[UIFont systemFontOfSize:15]];
  8. [_textView.layer setBorderWidth:1.0f];
  9. [_textView setDelegate:self];
  10. }
  11. return _textView;
  12. }

实现textViewDidChange方法:

  1. -(void)textViewDidChange:(UITextView *)textView{
  2. //博客园-FlyElephant
  3. static CGFloat maxHeight =60.0f;
  4. CGRect frame = textView.frame;
  5. CGSize constraintSize = CGSizeMake(frame.size.width, MAXFLOAT);
  6. CGSize size = [textView sizeThatFits:constraintSize];
  7. if (size.height<=frame.size.height) {
  8. size.height=frame.size.height;
  9. }else{
  10. if (size.height >= maxHeight)
  11. {
  12. size.height = maxHeight;
  13. textView.scrollEnabled = YES; // 允许滚动
  14. }
  15. else
  16. {
  17. textView.scrollEnabled = NO; // 不允许滚动
  18. }
  19. }
  20. textView.frame = CGRectMake(frame.origin.x, frame.origin.y, frame.size.width, size.height);
  21. }

iOS开发-UITextView根据内容自适应高度的更多相关文章

  1. iOS开发--UILabel根据内容自动调整高度

    写法一:对象方法,传入:字体/最大尺寸. 即可得到宽高, 最大尺寸主要限制宽度,如果是一行就给个{MAXFLOAT,MAXFLOAT};如果是多行就限制X值,Y值随便给 - (CGSize)sizeW ...

  2. Jquery实现textarea根据文本内容自适应高度

    本文给大家分享的是Jquery实现textarea根据文本内容自适应高度,这些在平时的项目中挺实用的,所以抽空封装了一个文本框根据输入内容自适应高度的插件,这里推荐给小伙伴们. autoTextare ...

  3. html5 textarea 文本框根据输入内容自适应高度

    <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m ...

  4. iOS开发之解决WebView自适应内容高度

    这段时间写的项目中,有涉及到根据后端上传的表单内容,然后在移动端将内容排版重新展示的功能点,所以小小的写一下解决办法. 首先如果直接进行内容展示,或者进行sizeToFit的操作,那么可能会造成图片超 ...

  5. IOS UILabel 根据内容自适应高度

    iOS Label 自适应高度  适配iOS7以后的版本 更多 self.contentLabelView = [[UILabel alloc] init]; self.contentLabelVie ...

  6. ios label根据内容自适应高度

    label自适应高度,想必大家也都很熟悉怎么去做,上代码: UILabel *label3 = [[UILabel alloc]initWithFrame:CGRectMake(150, 50, 15 ...

  7. iOS开发-UITextView实现PlaceHolder的方式

    之前开发遇到过UITextField中加入一个PlaceHolder的问题,直接设置一下即可,不过这次是需要在UITextView中实现一个PlaceHolder,跟之前有点不同.在网上参考了各位前辈 ...

  8. iOS 动态计算文本内容的高度

    关于ios 下动态计算文本内容的高度,经过查阅和网上搜素,现在看到的有以下几种方法: 1. //  获取字符串的大小  ios6 - (CGSize)getStringRect_:(NSString* ...

  9. uitextview根据内容算高度

    UITextView根据内容自动改变frame 分类: iOS2013-03-08 07:27 190人阅读 评论(0) 收藏 举报 注意点: 在textview中计算string占据的高度不能使用[ ...

随机推荐

  1. Java 基础知识总结 (三、运算符)

    三.Operators 运算符 Assignment Operators(赋值运算符) =   +=   -=   %=   *=   /=    <<=     >>=    ...

  2. Correspondence / ˏkɔris'pɔndәns / dictionary10-800.doc

    I have taken courses in office administration, typing,reports and correspondence writing. Correspond ...

  3. 技术英文单词贴--V

    V validate 验证,确认,使生效 verify 核实,查实,验证 version 版本,译文 via 通过,凭借,经过 prep

  4. SpringMVC在传递date型数据时的配置

    查阅了好多资料, 最后才发现原来只是添加一个方法就能解决的问题, 但是看了半天又没看明白, 只是知道这么写就能成功, 先记下来, 以后再研究吧, 在配置好springMVC的时候, 可以在前台的for ...

  5. 自动化测试工具QTP和SilkTest横向PK(转)

    转自:http://www.uml.org.cn/Test/201405212.asp?artid=1686 众所周知,自动化测试工具曾几何时三足鼎立,Mercury QTP/WinRunner系.I ...

  6. Word-wrap&Text-overflow

  7. Sql Server 复制表

    SELECT INTO 和 INSERT INTO SELECT 两种表复制语句 1.INSERT INTO SELECT语句 语句形式为:Insert into Table2(field1,fiel ...

  8. 云计算和大数据时代网络技术揭秘(十三)VXLAN

    Vxlan(virtual Extensible LAN)虚拟可扩展局域网,是一种Overlay方式的网络技术,采用了mac in UDP的方式 进行封装,共50字节的报头.该技术的目标是解决虚拟机在 ...

  9. windows server 2008 - 创建域和本机用户

    /* * ===================================================================================== * Filenam ...

  10. 《UML大战需求分析》阅读笔记3

    流程分析利器--活动图 活动图属于行为建模的一种.用来分析的不是系统中的某个属性,而是系统或是其中某个部分的活动.结构建模表达的是静态内容,行为建模表达的是动态内容. 在介绍活动图之前,先介绍一下行为 ...