【发布时间】:2014-03-02 17:48:31
【问题描述】:
我正在尝试更改我的UIBarButtonItem 字体。 ViewControllers 加载时看起来不错。但是,如果我点击条形按钮,或者向右滑动就像移动到上一个 ViewController(但随后拉回当前的),字体会变回系统字体。这是我在 AppDelegate 中设置的内容:
NSDictionary* barButtonItemAttributes = @{NSFontAttributeName: [UIFont fontWithName:@"SourceSansPro-Light" size:20.0f]};
[[UIBarButtonItem appearance] setTitleTextAttributes: barButtonItemAttributes forState:UIControlStateNormal];
[[UIBarButtonItem appearance] setTitleTextAttributes: barButtonItemAttributes forState:UIControlStateHighlighted];
[[UIBarButtonItem appearance] setTitleTextAttributes: barButtonItemAttributes forState:UIControlStateSelected];
[[UIBarButtonItem appearance] setTitleTextAttributes: barButtonItemAttributes forState:UIControlStateDisabled];
这是我 viewWillAppear 的一个例子:
- (void) viewWillAppear:(BOOL)animated {
self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"Done" style:UIBarButtonItemStylePlain target:self action:@selector(doneButtonPressed)];
self.navigationItem.rightBarButtonItem.tintColor = [UIColor colorWithRed:141.0/255.0 green:209.0/255.0 blue:205.0/255.0 alpha:1.0];
}
我是以某种方式将字体改回来,还是我滥用了外观代理?
【问题讨论】:
标签: ios objective-c fonts uibarbuttonitem