为什么UITextview没有像UITextField这样的占位符属性

Mah*_*eri 20 iphone objective-c ios ios5 ios5.1

嗨我正在使用iPhone应用程序,我知道UITextfield有占位符属性.但是UITextview没有占位符属性.我知道如何为UITextview自定义占位符的过程.但请让我知道其中的区别.

和UITextfield继承自UIControl,其内容继承自UIView ... NSObject.和UITextview继承自UIScrollView,UIView,UIresponder ...... NSOBject.但是,持有人财产的区别在哪里.

textfield如何包含占位符属性,为什么textview不包含占位符?

请提出任何想法,建议和/或给出更好的解释.

小智 52

我不知道为什么Apple没有在UITextView上包含placeHolder属性.但我能够使用包含占位符文本的UILabel子视图添加一个.

然后在委托回调中显示或隐藏它,如下所示

- (void)textViewDidBeginEditing:(UITextView *)textView
{
    self.defaultLabel.hidden = YES;
}

- (void)textViewDidChange:(UITextView *)txtView
{
    self.defaultLabel.hidden = ([txtView.text length] > 0);
}

- (void)textViewDidEndEditing:(UITextView *)txtView
{
    self.defaultLabel.hidden = ([txtView.text length] > 0);
}
Run Code Online (Sandbox Code Playgroud)

  • 太棒了!只需要注意,如果你希望它的行为类似于UITextField占位符,请删除 - (void)textViewDidBeginEditing:(UITextView*)textView.当用户实际开始输入时,占位符应该消失. (4认同)

DBD*_*DBD 26

为什么UITextField占位符值UITextView与其继承,甚至编程无关.这是关于Apple如何看待他们的使用并且更喜欢他们的使用.

UITextField是一个单项.它可用于输入用户名,密码,地址位或几乎任何东西.通常你会把它们中的几个聚集在一起,而且如果没有占位符文本,可能很难确定哪个字段应该具有哪些数据.占位符让我们知道该领域的目的.

文本字段示例

UITextView是一块文字.通常有几行,通常有一个与之关联的标题.因此,占位符文本通常没用.文本视图也更可能使用静态文本填充,这也会使占位符文本无法真正有用.

我认为Apple应该添加占位符属性UITextView吗?是.在我需要的时候必须自己制作它是很烦人的.Apple还在一些使用a的地方使用占位符文本UITextView.以下示例来自添加日历条目.

带占位符的文本视图示例