博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
为UITextView添加通知..来检测UITextView内容的改变
阅读量:7090 次
发布时间:2019-06-28

本文共 1169 字,大约阅读时间需要 3 分钟。

  self.mTextView =[[UITextView alloc]initWithFrame:CGRectMake(0, 0, SCREEN_WIDTH - 100, 28)];
    self.mTextView.backgroundColor =[UIColor whiteColor];
    self.mTextView.delegate = self;
    self.mTextView.text = @"我来说几句....";
    [self.mSecondaryBackView addSubview:self.mTextView];
 
    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(textDidChanged:) name:UITextViewTextDidChangeNotification object:nil];
 
- (void)textDidChanged:(NSNotification *)notif //监听文字改变 换行时要更改输入框的位置
{
    CGSize contentSize = self.mTextView.contentSize;
    UILabel *holdPlace = (UILabel *)[self.mTextView viewWithTag:1500];
    if (holdPlace) {
            holdPlace.text = @"";
    }
   
    if (contentSize.height > 140){
        return;
    }
    CGFloat minus = 3;
    CGRect selfFrame = self.mBackView.frame;
    CGFloat selfHeight = self.mTextView.superview.frame.origin.y * 2 + contentSize.height - minus + 2 * 2;
    CGFloat selfOriginY = selfFrame.origin.y - (selfHeight - selfFrame.size.height);
    selfFrame.origin.y = selfOriginY;
    selfFrame.size.height = selfHeight;
    self.mBackView.frame = selfFrame;
    self.mSecondaryBackView.frame =CGRectMake(10, 10, 230, selfHeight-20);
    NSLog(@"文字改变");
}

转载于:https://www.cnblogs.com/tian-sun/p/4849741.html

你可能感兴趣的文章
corosync+pacemaker+mysql+drbd构建mysql高可用集群
查看>>
docker的dockerfile文件
查看>>
前端工具 - 15个最佳的 JavaScript 表单验证库
查看>>
linux服务器安装pip命令
查看>>
JAVA游戏编程之一----IDE安装调试(3) --JAD 文件介绍--debug调试
查看>>
在CentOS 7上安装Kafka
查看>>
awk用法(二)
查看>>
Java的动态代理
查看>>
Unix整理笔记——文件系统——里程碑M4
查看>>
使用loadrunner进行报表导出下载的性能测试
查看>>
React Native – 使用 JavaScript 开发原生应用
查看>>
网络基础CCNP篇|如何接入公网
查看>>
局域网共享
查看>>
sudo、磁盘配额、数组、信号捕捉
查看>>
niceTitle插件
查看>>
查看mysql数据库表大小
查看>>
Azure负载均衡机制与会话粘滞需求
查看>>
leetCode 121. Best Time to Buy and Sell Stock 数组
查看>>
查看硬件信息几种方法
查看>>
MikroTik RouterOS-常用配置命令
查看>>