1

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

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

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

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

4

1 回答 1

2

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

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

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

于 2012-05-27T19:15:05.710 回答