iOS   发布时间:2022-03-30  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了当使用Storyboard with iOS 5时,无法将多个按钮分配给UINavigationItem大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我是一个iOS开发人员,有很多经验,通过代码开发UI。

我现在测试故事板功能,因为我测试切换到“设计”的UI,而不是实现它。在过去,我坚持使用Nib / xib的许多限制,因此我从来没有成功与开关。所以这里来一个新的尝试与故事书:)

现在我的问题 – 我设计一个iPad故事板,它有一个导航控制器和一个TableView控制器。我想添加多个UIBarButtonItems,但我可以只为每一侧添加一个Interface Builder。

代码看起来像:

UIBarButtonItem *b = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemBookmarks target:nil action:nil];

UIBarButtonItem *spacer = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFixedspace target:nil action:nil];
spacer.width = 20;

self.navigationItem.rightBarButtonItems = [NSArray arrayWithObjects:self.editButtonItem,spacer,b,nil];

但为什么我不能使用IB添加多个按钮?只有outletButButtonItem,rightBarButtonItems,BACkBarButtonItems …

这让我疯狂

谢谢!

解决方法

编辑

当我回答这个问题时,Xcode不提供链接添加的按钮在故事板中的可能性。提供的手法允许仍然有在故事板设计的segue。

使用更新版本的Xcode,确保@ecotax引入的解决方案和更高版本的@ShimanskiArtem的更详细的答案是要使用的。

我有和你一样的问题,我发现了下面的伎俩

假设你有一个navigationController,你想要有多个按钮。因为iOS 5可以分配一个数组。问题是,你失去了使用故事板的所有好处,因为它将以编程方式完成。

我使用了以下技巧。通常当你想要在导航栏上的多个按钮,你不想要一个工具栏。

在当前视图(不是在导航控制器中)希望显示按钮的位置,通过更改显示工具栏

bottomBar =推断为bottomBar =工具栏。

工具栏将出现在底部
将uIBarButtons添加到此栏。使用segue等将它们链接到其他视图控制器…

在.h文件中为每个按钮创建一个插座

@property (strong,nonatomiC) IBOutlet UIBarButtonItem *Button1;
@property (strong,nonatomiC) IBOutlet UIBarButtonItem *Button2;
@property (strong,nonatomiC) IBOutlet UIBarButtonItem *Button3;

然后在您的viewDidLoad()链接到导航栏的按钮,并隐藏工具栏。按照您想要查看的顺序相反的顺序添加它们

self.navigationItem.rightBarButtonItems =
    [NSArray arrayWithObjects:self.button3,self.button2,self.button1,nil];

self.navigationController.toolbarHidden = YES;

并且在导航栏中有多个按钮

并在模拟器中的结果

大佬总结

以上是大佬教程为你收集整理的当使用Storyboard with iOS 5时,无法将多个按钮分配给UINavigationItem全部内容,希望文章能够帮你解决当使用Storyboard with iOS 5时,无法将多个按钮分配给UINavigationItem所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。