一.Xcode环境:Xcode11
二.ios系统版本:ios13以上
三.出现的问题:在对UItextField使用的时候,修改占位文字的颜色(修改字体大小亦是如此)
1.ios13之前采用的方法:KVC
2.代码:
[_textMessageField setValue:SHP_COLOR_alpha(0xC4C4C4, 1) forKeyPath:@"_placeholderLabel.textColor"];
3.出现崩溃问题和描述:
4.采用解决方案(富文本):
NSMutableDictionary *attDic = [@{NSForegroundColorAttributeName:SHP_COLOR_alpha(0xFFFFFF, 1), NSFontAttributeName:SHP_RegularSysFont(17.0)} mutableCopy];
NSMutableAttributedString *attPlace = [[NSMutableAttributedString alloc] initWithString:@"请输入验证码" attributes:attDic];
loginTextField.attributedPlaceholder = attPlace;
本文详细介绍了在Xcode11环境下,针对iOS13及以上版本,解决UITextField占位文字颜色及字体大小修改时遇到的崩溃问题。通过对比旧版KVC方法,提出了使用富文本属性设置attributedPlaceholder的解决方案。
3307

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



