ios开发之--textview意见反馈页面(占位label,字数统计,提交按钮的交互设置)

记录一个页面的功能:

textview的占位符,字数统计,提交按钮的交互设置,具体效果图如下:

输入效果:

具体实现代码如下:

1,设置代理

@interface FKViewController ()<UITextViewDelegate>

2,我是直接xib拖拽的控件

@property (weak, nonatomic) IBOutlet UITextView *FKTextView;
@property (weak, nonatomic) IBOutlet UILabel *descLab;
@property (weak, nonatomic) IBOutlet UIButton *sendBtn;
@property (weak, nonatomic) IBOutlet UILabel *stringlenghtLab;

3,viewDidLoad里面

self.FKTextView.delegate = self;
    self.descLab.userInteractionEnabled = NO;
    self.sendBtn.userInteractionEnabled = NO;
    self.sendBtn.backgroundColor = [UIColor lightGrayColor];

4,具体代理方法实现

-(void)textViewDidChange:(UITextView *)textView
{
    self.descLab.hidden = YES;
    self.sendBtn.userInteractionEnabled = YES;
    self.sendBtn.backgroundColor = MainColor;
    //实时显示字数
    self.stringlenghtLab.text = [NSString stringWithFormat:@"%ld/100",(long)textView.text.length];
    
    //字数限制
    if (textView.text.length >= 100) {
        textView.text = [textView.text substringToIndex:100];
    }
    
    //取消按钮点击权限,并显示文字
    if (textView.text.length == 0) {
        self.descLab.hidden = NO;
        self.sendBtn.userInteractionEnabled = NO;
        self.sendBtn.backgroundColor = [UIColor lightGrayColor];
    }
}

-(BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text
{
    if ([text isEqualToString:@"\n"]) {
        
        [self.FKTextView resignFirstResponder];
        
        return NO;
    }
    
    return YES;
}

仅做记录!

posted @ 2017-12-08 18:47  稻草人11223  阅读(1785)  评论(0编辑  收藏  举报
返回顶部