gpt4 book ai didi

ios - 更改手动添加的 UINavigationBar 的右侧 BarButtonItem?

转载 作者:行者123 更新时间:2023-11-29 00:30:37 28 4
gpt4 key购买 nike

我有一个 UINavigationBar,我已将其手动拖动并添加到 Storyboard 中的 ViewController。在该 NavigationBar 中,我已拖动并添加了一个样式为默认“添加”图像的“UIBarButtonItem”。

View 是模态推送的,因此它没有自动推送的 NavigationBar。

navBar 和 BarButton 都像这样连接到我的 View Controller 和 Storyboard

@property (strong, nonatomic) IBOutlet UINavigationBar *RibbonDetailNavBar;
@property (strong, nonatomic) IBOutlet UIBarButtonItem *addRemoveButton;

我尝试像这样在 viewDidLoad 中将按钮图像更改为另一个默认值,垃圾桶图标

if (alreadyAdded)
{
[self.navigationItem.rightBarButtonItem setStyle:UIBarButtonSystemItemTrash];
}

没有效果。

我也试过这个:

if (alreadyAdded)
{
_addRemoveButton = nil;
}

同样没有效果

还有这个:

if (alreadyAdded)
{
_addRemoveButton = [[UIBarButtonItem alloc]initWithImage:nil style:UIBarButtonSystemItemTrash target:nil action:nil];
}

这也没有效果。

如何将此按钮设置为垃圾桶图标?

最佳答案

UIBarButtonSystemItemTrash 无法通过 style 属性检索。样式是 UIBarButtonItemStyle 类型,可以是 UIBarButtonItemStylePlainUIBarButtonItemStyleBordered

查看 documentation here

使用此代码

@property (strong, nonatomic) IBOutlet UINavigationBar *RibbonDetailNavBar;
// No need to create rightBarButtonItem IBOutlet.
if (alreadyAdded)
{
self.RibbonDetailNavBar.topItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem: UIBarButtonSystemItemTrash target: nil action: nil];
}
else {
self.RibbonDetailNavBar.topItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem: UIBarButtonSystemItemAdd target: nil action: nil];
}

希望对你有帮助。编码愉快! :)

关于ios - 更改手动添加的 UINavigationBar 的右侧 BarButtonItem?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41965307/

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