【问题标题】:what is class of tab bar item什么是标签栏项目的类别
【发布时间】:2012-05-27 17:09:49
【问题描述】:

当我将元素从 xib 连接到头文件时。它给了我

@property (strong, nonatomic) IBOutlet UITabBarItem *contract;
@property (strong, nonatomic) IBOutlet UITabBarItem *history;

但是,当我尝试打印 tabBar 的子视图(UITabBar 的类型)时,我得到了 2 个 UITabBarButton。

我的问题是标签栏项目的类别是什么。它是 UITabBarItem 还是 UITabBarButton

【问题讨论】:

  • 为什么还要打印它的子视图?
  • 出于某些目的.....我为他们设置了标签,但我无法取回他们的标签..
  • 你似乎正在将自己浸入沼泽泥浆中……不要这样做。如果您需要为视图分配标签,请不要只使用内置视图并循环遍历其子视图。使用您知道并可以直接访问的视图。
  • 好的,所以忽略设置标签。我的问题是为什么我的子视图是 uitabbarbutton ......

标签: iphone


【解决方案1】:

首先:不建议您这样做。您不应该依赖 Apple 视图的私有子视图,因为它们可以随时更改。

要真正回答所提出的问题,这是因为UITabBarItem 实际上并不是一个视图,因此永远不会出现在您的视图层次结构中。 UITabBar 代码中的某处可能发生的情况是,UITabBarItems 被迭代,并且系统为每个UITabBarButton 类创建一个新视图,这是UIControl 的私有子类。

您永远不会直接访问UITabBarButton。正如 BoltClock 在 cmets 中指出的那样,您应该重新考虑您的设计,这样您就不需要这样做了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-18
    相关资源
    最近更新 更多