У моего iPhone-приложения есть контроллер панели вкладок, и на каждой вкладке (4 вкладки) есть UINavigationController, который я хочу быть другим цветом и изменить шрифт на заголовке, поэтому я сделал свой собственный пользовательский контроллер навигации для использования везде поэтому эти изменения только в 1 месте. Тон легко и отлично работает, но когда я пытаюсь установить шрифт с помощью setTitleTextAttributes, он меняет шрифт, но в некоторых представлениях заголовок отображается в конце (т.е. "Мой титл..." ). Если я меняю виды, а затем возвращаюсь к виду с отключенным заголовком, заголовок действительно отображается правильно.
В настоящее время мой viewDidLoad в моем пользовательском UINavigationController имеет:
UIFont *font = [UIFont fontWithName:@"GillSans-Bold" size:22];
NSDictionary *attr = [[NSDictionary alloc] initWithObjectsAndKeys:font, UITextAttributeFont, nil];
[self.navigationBar setTitleTextAttributes:attr];
Моя мысль заключалась в том, что он менял шрифт titleView, но не изменялся в соответствии с новым размером (так как это более крупный шрифт). Другая проблема заключается в том, что телефон поворачивается на пейзаж, любые буквы, которые висят низко (g, p, y), отсекаются. Есть ли способ изменить размер метки или разрешить установку minimumFontSize, чтобы текст просто сжимался, когда он слишком большой?