zoukankan      html  css  js  c++  java
  • iOS开发-UITextView根据内容自适应高度

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

    定义UITextView,实现UITextViewDelegate:

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

    实现textViewDidChange方法:

    -(void)textViewDidChange:(UITextView *)textView{
        //博客园-FlyElephant
        static CGFloat maxHeight =60.0f;
        CGRect frame = textView.frame;
        CGSize constraintSize = CGSizeMake(frame.size.width, MAXFLOAT);
        CGSize size = [textView sizeThatFits:constraintSize];
        if (size.height<=frame.size.height) {
            size.height=frame.size.height;
        }else{
            if (size.height >= maxHeight)
            {
                size.height = maxHeight;
                textView.scrollEnabled = YES;   // 允许滚动
            }
            else
            {
                textView.scrollEnabled = NO;    // 不允许滚动
            }
        }
        textView.frame = CGRectMake(frame.origin.x, frame.origin.y, frame.size.width, size.height);
    }
  • 相关阅读:
    AdaBoost算法学习
    梯度下降与随机梯度下降
    Logistic Regression学习
    PCA算法
    VS2013常见错误排查
    K临近算法
    遗传算法小结
    SLIC超像素(superpixel)算法
    openslide api函数概要
    线程钩子
  • 原文地址:https://www.cnblogs.com/xiaofeixiang/p/5148380.html
Copyright © 2011-2022 走看看