我正在尝试在文本更改时动态更改UITextField字体大小。 但是,当我这样做时,我的文本域光标向上移动。 所以,如果有人知道解决方案,请帮助。
请检查图像以供参考。 感谢。
-(void)textChanged:(id)sender{
UITextField *textFild = (UITextField*)sender;
if ([textFild.text isEqualToString:@""]) {
[textFild setFont:FONT_30];
}
else{
[textFild setFont:FONT_15];
}
textFild.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter;
}
请检查代码..
答案 0 :(得分:1)
动态设置字体大小后添加此行。这对你有用。
txtFieldPassword.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter;
而不是txtFieldPassword
写下您IBOutlet
textfield
的{{1}}名称。
答案 1 :(得分:0)
这是预期的行为。设置文本字段的文本以及字体。因此光标将重置为正常位置。
-(void)textChanged:(id)sender {
UITextField *textFild = (UITextField*)sender;
NSString *tmpString = textFild.text;
if ([textFild.text isEqualToString:@""]) {
textFild.text=tmpString;
[textFild setFont:FONT_30];
} else {
textFild.text=tempString;
[textFild setFont:FONT_15];
}
textFild.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter;
}