Reputation: 10398
I am suffering the same problem as here UITextField's custom font changes while in edit mode and could really do with a solution.
I have 4 UITextFields that I assign custom fonts in ViewDidLoad. This works and they look great, however when clicking a field to edit the text the font changes back to default text and when resignedfirstresponder the custom font comes back.
- (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;
If I use system fonts, then the text field works as it should, so there must be something to do with this font file maybe?
Upvotes: 8
Views: 5092
Reputation: 4731
I have found that when I'm setting the UILabel appearance anywhere in the code:
[[UILabel appearance] setFont:MYFONT];
Changing UITextField
font only applies to editing text, and not to the text shown in textfield when user is not editing it.
Upvotes: 3
Reputation: 3422
You can set the font again when editing, the font will be the same when editing.
- (void)textFieldDidBeginEditing:(UITextField *)textField {
textField.font = customizedFont; //The font you want to use no matter editing/no editing
}
Upvotes: 1
Reputation: 2051
The lable (lbl1,lbl2,lbl3) which you have used are custom or is it set from xib file?
I doubt the font it is changing is due to font set in Xib file.
Upvotes: 1
Reputation: 3703
I have downloaded that font and tried it in an iPhone app. I also downloaded some other fonts from the internet and tried them as well. I also tried some Mac fonts such as Chalkduster. I also tried 3Dumb. The results every font I tried EXCEPT 2Dumb and 3Dumb worked. Solution: Use another font.
Upvotes: 2