iOS Dev (59) 高度自适应的UITextView

iOS Dev (59) 高度自适应的UITextView

大家好,又见面了,我是全栈君。

iOS Dev (59) 高度自适应的UITextView

作者:阿锐 地址:http://blog.csdn.net/prevention

–

例如以下 _inputTextView 为一个 UITextView 实例。首先要设置它的 delegate。然后要在你的头文件的 interface 声明中加上 UITextViewDelegate。

_inputTextView.delegate = self;

在 implementation 中实现例如以下方法:

- (void)textViewDidChange:(UITextView *)textView
{
    // 获取原来的 frame
    CGRect tmpRect = _inputTextView.frame;

    CGSize size = [_inputTextView.text sizeWithFont:[UIFont systemFontOfSize:_inputTextFontSize]
                               constrainedToSize:CGSizeMake(YOUR_TEXTVIEW_WIDTH, 2000)
                                   lineBreakMode:NSLineBreakByWordWrapping];

    tmpRect.size.height = size.height + 20; // 20 points for padding
    tmpRect.origin.y = keyboardPositionY - tmpRect.size.height;

    _inputTextView.frame = tmpRect;
    _inputTextView.text = _inputTextView.text;
}
  • 注意上面的 YOUR_TEXTVIEW_WIDTH 是你的 UITextView 的宽度。

  • 注意 lineBreakMode 选 NSLineBreakByWordWrapping。比較老的版本号中是 UILineBreakModeWordWrap。
  • size.height + 20 中的 20 是我留出来的 padding。
  • _inputTextFontSize 是你设置的字号高度
  • 这批那文章来自 blog.csdn.net/prevention 。转载请注明。

–

转载请注明来自:http://blog.csdn.net/prevention

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/116645.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • WebView使用配置文件

    WebView使用配置文件

    2022年1月17日
  • struts2于validate要使用

    struts2于validate要使用

    2022年1月11日
  • flutter byte(Unit8List) 转 ios Uint8[] 转 c语言char*

    flutter byte(Unit8List) 转 ios Uint8[] 转 c语言char*最近用flutter写ios线上项目,有一个功能让把设备传来的数据加密,而这个坑爹的加密的方法是c语言写的,用flutter各种尝试,始终不能还原c的加密过程,只能调用ios原生代码,然后用原生代码调用c语言加密,然后将加密的数据返回过程是这么个过程,但是3种语言的类型各不相同,所以中间就出现来各种转换,本人一个安卓屌丝,碰到swift和c语言也是一脸懵逼,很简单的东西我搞了2天,先看…

    2022年9月16日
  • jsonstring_jsonstring转对象

    jsonstring_jsonstring转对象fastjson包下的JSONJSONStringauthTbAccountsByBd=instance.getAuthTbAccountsByBd(“”);JSONObjectparse=(JSONObject)JSON.parse(authTbAccountsByBd.getValue());

    2022年8月23日
  • SAP ABAP计划 SY-REPID与SY-CPROG差异

    SAP ABAP计划 SY-REPID与SY-CPROG差异

    2021年12月30日
  • 三极管典型开关电路

    三极管典型开关电路1.基极必须串接电阻,保护基极,保护CPU的IO口。2.基极根据PNP或者NPN管子加上拉电阻或者下拉电阻。3.集电极电阻阻值根据驱动电流实际情况调整。同样基极电阻也可以根据实际情况调整。4.基极和发射极需要并联电阻,该电阻的作用是在输入呈高阻态时使晶体管可靠截止,极小值是在前级驱动使晶体管饱和时与基极限流电阻分压后能够满足晶体管的临界饱和,实际选择时会大大高于这个极小值,

    2022年9月15日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号