通过 UITabBarController 访问时如何设置 UITabBars 项目属性?
我以编程方式构建了一个 UITabBarController 并填充了它的 viewControllers 属性。 当我运行此命令时,tabBar 按钮当然是空的,我尝试访问 UITabBarController 上的 tabBar
属性,将其 items
属性设置为我的文本/图像,这导致应用程序崩溃。
浏览 UITabBarController 的文档时,我在 tabBar 属性下读到了以下内容:
关联的标签栏视图 用这个控制器。 (只读)
@property(非原子,只读)UITabBar *tabBar 讨论 你永远不应该尝试操纵 UITabBar 对象本身存储在该属性中。 如果您尝试这样做,选项卡栏 视图抛出异常。配置 标签栏界面的项目, 你应该分配一个或多个 自定义视图控制器 viewControllers 属性。标签栏 从中收集所需的标签栏项目 您指定的视图控制器。
这个提供的标签栏视图 财产仅适用于以下情况 您想要显示操作表 使用 showFromTabBar: 方法 UIActionSheet 类。
这就是我想要的:
标签栏收集需要的标签 视图控制器中的栏项目 您指定。
您不在一个地方设置 tabBar 而在另一个地方设置内容也是完全合理的。
但是,如何在我的 viewController 中定义这些项目,这些项目都是 UINavigationController 类型,并以我的自定义 ViewController 作为 rootController?
除了我需要实现的 UITabBarControllerDelegate 之外,还有其他协议吗? >
希望有人能指出我正确的方向,我没有看到这个:)谢谢
I have build a UITabBarController programmatically and populated its viewControllers
property.
When I run this the tabBar buttons are, of course, empty, I tried to access the tabBar
property on the UITabBarController to set its items
property to my text/images, which made the app crash.
Going through the documentation for the UITabBarController I read this under the tabBar property:
The tab bar view associated
with this controller. (read-only)@property(nonatomic,readonly) UITabBar
*tabBar Discussion You should never attempt to manipulate the UITabBar
object itself stored in this property.
If you attempt to do so, the tab bar
view throws an exception. To configure
the items for your tab bar interface,
you should instead assign one or more
custom view controllers to the
viewControllers property. The tab bar
collects the needed tab bar items from
the view controllers you specify.The tab bar view provided by this
property is only for situations where
you want to display an action sheet
using the showFromTabBar: method of
the UIActionSheet class.
This is what I want:
The tab bar collects the needed tab
bar items from the view controllers
you specify.
It also makes perfect sense that you do not setup up the tabBar in one place and the content in another.
But how do I define these items in my viewControllers which are all of type UINavigationController, with my custom ViewController as the rootController?
Is there some protocol besides the UITabBarControllerDelegate I need to implement?
Hope someone could point me in the right direction, I did not see this one coming:) Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
一般来说,选项卡栏项目会填充您正在加载的视图控制器的名称。
对于您的情况,您可以做一件事,
如果您收到此信息,请回复。
In general, the tab bar items gets filled with the name of the view controller you are loading into it.
In your case you can do one thing,
Do reply if you get this in.