【问题标题】:Placeholder for UITextViewUITextView 的占位符
【发布时间】:2011-07-17 13:00:24
【问题描述】:

有人曾经在 UITextView 中实现过一些东西,当文本长度小于某个阈值时阻止它接收未来的输入?我计划像我们在邮件编辑器界面中那样实现一个文本视图。我们在那里有一个占位符“主题”,然后光标开始。

Placeholder in UITextView 受这个问题的启发,我想知道一旦光标移回占位符字符串,是否有一些方法可用于停止更改 UITextView 中的文本。

有什么想法吗?

【问题讨论】:

    标签: uitextview


    【解决方案1】:

    如果只是清除它,然后将该文本预先添加到用户提交的任何内容中呢?

    【讨论】:

    • 正确。这就是我目前的想法。但是通过为 UITextViewTextDidChangeNotification 事件注册一个观察者,我们不能轻易截取用户刚刚输入的字母。
    • 很老的帖子,但仍然值得说:我所知道的是使用textView:shouldChangeTextInRange:replacementText:委托方法可以轻松拦截输入的字母...只需使用replacementText来拦截用户输入的内容.. .
    【解决方案2】:

    你可以使用类似..的东西。

    - (void)textViewDidBeginEditing:(UITextView *)textView
    {
    
        if (self.textView.textColor != [UIColor blackColor]) {
    
            self.textView.text = @"";
            self.textView.textColor = [UIColor blackColor];
        }
    
    }
    
    - (void)textViewDidEndEditing:(UITextView *)textView
    {
    //To display the placeholder text
        if (![self.textView.text length]) {
    
            self.textView.text = @"Description";
            self.textView.textColor = [UIColor lightGrayColor];
        }
    
    }
    

    【讨论】:

      猜你喜欢
      • 2010-11-22
      • 2016-06-21
      • 1970-01-01
      • 2012-08-31
      • 2014-02-16
      • 2023-03-27
      • 2016-01-29
      • 2014-10-11
      • 2015-02-23
      相关资源
      最近更新 更多