This blog post问了我一个问题:如何在界面生成器中可视化地管理工具栏项?当然,顶层视图可以使用this technique,但是其他视图呢?有没有办法让我的设计伙伴能够直接在这样的视图中编辑工具栏项,而不需要创建一个实际上从未使用过的占位符UIToolbar?
发布于 2012-04-18 15:16:39
这就是我是如何做到的。我将此属性添加到我的控制器@interface中
@property (nonatomic, strong) IBOutletCollection(UIBarButtonItem) NSArray *toolbarItems;在@implementation中,我添加了:
@synthesize toolbarItems;然后,在nib中,我将所有的UIBarButtonItem都放在一个UIToolbar中。在"Objects“导航器中,我将它们全部选中,然后将它们移出UIToolbar,这样它们就没有自己所属的视图了。然后,对于每个文件,我右键单击,并将"New Referencing Collection“旁边的圆圈拖到"File's Owner",然后在弹出的弹出窗口中选择toolbarItems。现在,所有的UIBarButtonItems都神奇地出现在UIToolbar中,不再需要更多的工作。
遗憾的是,这并不理想。现在UIBarButtonItems不在nib中的UIToolbar中,它们是完全不可见的接口构建器。它们仍然在“对象”导航器中,但实际上看不到它们的样子。这似乎是一个不幸的错误(提交为rdar://11234043)。
另一个问题是,据我所知,无法看到IBOutletCollection中项目的顺序。我按照我想要的显示顺序添加了它们,从右到左,但如果我需要更改顺序或在中间的某个地方添加新的,这将是一个皮塔。
这里希望苹果在界面构建器中加入更好的IBOutletCollection支持,并提供某种可见的容器。
https://stackoverflow.com/questions/9579071
复制相似问题