zoukankan      html  css  js  c++  java
  • 为UITextView添加通知..来检测UITextView内容的改变

      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(@"文字改变");
    }
  • 相关阅读:
    __module__ 和 __class__
    __str__ 和 __repr
    __getitem__ __setitem__ __delitem__ 使用
    授权
    __getattr__ __delattr__ __setattr__ __getattribute__使用(重写python提供的错误信息)
    __import__
    hasattr getattr setattr delattr --> (反射)
    类三大特性(继承 多态 封装)
    静态方法@staticmethod
    类方法@classmethod
  • 原文地址:https://www.cnblogs.com/tian-sun/p/4849741.html
Copyright © 2011-2022 走看看