iOS 8.0 中 UIBarButton 已被弃用

5

将部署目标从7.1更改为8.2后,我收到了一个警告,告诉我UIBarButton已被弃用。

这是我使用的代码:

UIToolbar* numberToolbar = [[UIToolbar alloc]initWithFrame:CGRectMake(0, 0, 320, 50)];

numberToolbar.items = [NSArray arrayWithObjects:
                       [[UIBarButtonItem alloc]initWithTitle:@"Done" style:UIBarButtonItemStyleBordered target:self action:@selector(nextButton)],
                       [[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil], nil];
self.numberOfGuestsTextField.inputAccessoryView = numberToolbar;

有没有什么可以替代UIBarButtonItem的东西呢?

error


2
请使用UIBarButtonItemStylePlain代替UIBarButtonItemStyleBordered - tounaobun
@BensonTommy 如果我需要在我的代码中适用于iOS 7和iOS 8,我需要检查系统是7还是8,使用这个if (floor(NSFoundationVersionNumber) <= NSFoundationVersionNumber_iOS_7_1)语句是正确的吗? - Zakaria Darwish
2
我不这么认为,它们都可以在iOS2.0及以上版本中使用。 - tounaobun
@BensonTommy 谢谢!! - Zakaria Darwish
1
[item setTitleTextAttributes:@{NSForegroundColorAttributeName: [UIColor redColor]} forState:UIControlStateNormal]; - tounaobun
显示剩余2条评论
1个回答

16

UIBarButtonItem 并未被弃用 - UIBarButtonItemStyleBordered 已经弃用。请改用 UIBarButtonItemStylePlainUIBarButtonItemStyleDone

从 iOS 7 开始,工具栏按钮的样式已经变成了更扁平的形式。这就是为什么 UIBarButtonItemStyleBordered 不再可用,它看起来像一个 UIBarButtonItemStylePlain 按钮。使用 UIBarButtonItemStyleDone,文本将会加粗而不是常规字体。


你能否看一下我在 Stack Overflow 上的问题? - Zakaria Darwish

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接