Я пытаюсь написать настройку мобильного субстрата, чтобы изменить цвет шрифта по умолчанию, используемый приложением в заголовке и кнопках UINavigationBar, , например. Вместо стандартного белого заголовка в Navbar все белые тексты на панели навигации будут красными,UINavigationBar меняет цвет шрифта по умолчанию
Надеюсь, что это имеет смысл.
На данный момент я пытаюсь:
%hood UINavigationBar
-(void)setTitleView:(id)arg1 {
%orig
UILabel *titleLabel = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 320, 30)];
titleLabel.textColor = [UIColor redColor]
}
%end
Я чувствую его, потому что я пытаюсь установить новый UILabel вместо замены setTitleView по умолчанию, который вытягивается.
Любая помощь будет принята с благодарностью :)
Заранее спасибо!
Так я прав, говоря, что в методе viewDidLoad мне нужно переопределить его вызова метода setTitleView в Панель навигации, и вместо того, чтобы указать его (например) '[[UINavigationBar внешний вид] setTitleTextAttributes: UITextAttributeColor, [UIColorWithRed: 0,0 green: 0.0 blue: 0.0 alpha: 1.0]]; ' Если бы я хотел сделать titleText черным – BradStevenson
Вам нужно просто установить атрибуты' appearance' один раз, когда приложение запустится, прежде чем появятся какие-либо представления. Создание собственного суперкласса для контроллеров представлений не требуется, если вы используете класс iOS 5 'UIAppearance'. – jhabbott