gpt4 book ai didi

ios - UIbarbuttonitem出现导致崩溃

转载 作者:行者123 更新时间:2023-11-29 10:29:47 25 4
gpt4 key购买 nike

CommonViewController,它继承自UINavigationController。我在其中完成了以下方法。

+ (void)initialize{
UINavigationBar *naVcBar = [UINavigationBar appearance];
[naVcBar setBackgroundImage:[UIImage imageNamed:@"bg_nav"] forBarMetrics:UIBarMetricsDefault];

UIBarButtonItem *buttonItem = [UIBarButtonItem appearance];
NSMutableDictionary *textAttributes = [NSMutableDictionary dictionary];
[textAttributes setObject:[UIColor blackColor] forKey:UITextAttributeFont];
[buttonItem setTitleTextAttributes:textAttributes forState:UIControlStateNormal];
}

然后,有一个名为MovieListViewControllerviewController,就是那个CommonViewControllerrootViewController,下面是里面的代码。

- (void)viewDidLoad {
[super viewDidLoad];
UIBarButtonItem *right=[[UIBarButtonItem alloc] initWithTitle:@"切换模式" style:(UIBarButtonItemStylePlain) target:self action:@selector(exchangeView)];
self.navigationItem.rightBarButtonItem=right;
}

结果就是程序崩溃了。它崩溃于:self.navigationItem.rightBarButtonItem=right;

所以我尝试修复它并发现当我删除代码时

UIBarButtonItem 
*buttonItem = [UIBarButtonItem appearance];
NSMutableDictionary *textAttributes = [NSMutableDictionary dictionary];
[textAttributes setObject:[UIColor blackColor] forKey:UITextAttributeFont];
[buttonItem setTitleTextAttributes:textAttributes forState:UIControlStateNormal];

一切正常。但我不知道原因,为什么?谢谢!

错误:

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[UICachedDeviceWhiteColor pointSize]: unrecognized selector sent to instance 0x7fb048c3b3d0'

最佳答案

你的问题出在这一行:

[textAttributes setObject:[UIColor blackColor] forKey:UITextAttributeFont];

您传递的是一种颜色,但指定了“字体”属性。改变两者之一。要么传入字体而不是颜色,要么将键更改为用于颜色的键。

此外,UITextAttributeFont 已弃用。请改用 NSFontAttributeName

关于ios - UIbarbuttonitem出现导致崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30294327/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com