UITextField在编辑时更改字体

我遇到了同样的问题,因为在编辑模式下 , UITextField的自定义字体发生了变化,并且可以真正解决这个问题。

我有4个UITextFields,我在ViewDidLoad中分配自定义字体。 这个工作,他们看起来不错,但是当点击一个字段来编辑文本字体变回默认文本,当resignedfirstresponder自定义字体回来。

- (void)viewDidLoad { [super viewDidLoad]; { UIFont *twoDumb = [UIFont fontWithName:@"Dumb" size:20.f]; lbl1.font = twoDumb; broughtForward.font = twoDumb; lbl2.font = [UIFont fontWithName:@"Dumb" size:24.f]; amountTextfield.font = twoDumb; lbl3.font = twoDumb; 

如果我使用系统字体,那么文本字段的工作原理应该如此,所以这个字体文件一定有什么关系呢?

在这里输入图像说明 您使用的标签(lbl1,lbl2,lbl3)是自定义还是从xib文件设置?

我怀疑它正在改变的字体是由于在Xib文件中设置的字体

在这里输入图像说明

我发现,当我在代码的任何地方设置UILabel外观时:

 [[UILabel appearance] setFont:MYFONT]; 

更改UITextField字体仅适用于编辑文本,而不适用于用户未编辑文本框中显示的文本。

希望这可以帮助

我已经下载了该字体,并尝试在iPhone应用程序。 我也从互联网上下载了一些其他字体,并尝试使用它们。 我也尝试了一些Mac字体,如Chalkduster。 我也尝试过3Dumb。 每一个字体的结果,我尝试除2Dumb和3Dumb工作。 解决scheme:使用其他字体。

编辑时可以再次设置字体,编辑时字体一样。

 - (void)textFieldDidBeginEditing:(UITextField *)textField { textField.font = customizedFont; //The font you want to use no matter editing/no editing }