iOS开发很多时候我们需要使用textView代替textField,因为textfield不能自动换行,那么textView就面临着placeholder提示文字的问题,其实实现原理就是在textView下面再添加一个用UITextView创建的_placeholderLabel,通过控制这个_placeholderLabel的隐藏与显示来实现UItextField的placeholder的效果。
本文还会讲到在输入的过程中textView如何动态适应内容的高度。以及还会提及到如何获取textView的行数问题。
//创建段落样式
NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc] init];
paragraphStyle.lineSpacing = 5;// 字体的行间距
NSDictionary *attributes = @{
NSFontAttributeName:[UIFont systemFontOfSize:15],
NSParagraphStyleAttributeName:paragraphStyle
};
//这个_placeholderLabel是贴在_textView下面的,
_placeholderLabel = [[UITextView alloc] initWithFrame:CGRectMake(20, 64, kScreenWidth-40, 100)];
_placeholderLabel.attributedText = [[NSAttributedString alloc] initWithString:@"输入你的内容" attributes:attributes];
[_placeholderLabel setEditable:NO];
[s

在iOS开发中,为了实现自动换行,通常选择使用textView替代textField。然而,这引入了如何设置textView的placeholder效果。本文详细介绍了通过在textView下方添加一个定制的_placeholderLabel来模拟textField的placeholder功能。同时,文章还讨论了在输入过程中使textView根据内容动态调整高度的方法,以及如何计算textView的行数。
最低0.47元/天 解锁文章
658

被折叠的 条评论
为什么被折叠?



