IOS开发的UITabBarController的一点问题。。。。有分

图一:图二:图三:问题:为什么我一运行,TabBarItem只有第一个出来的?而第二第三个等其他个要依次点击过才会显示出来。我明明设置的代码都是一样的啊??怎么一运行只显... 图一:

图二:

图三:

问题:
为什么我一运行,TabBarItem只有第一个出来的?而第二第三个等其他个要依次点击过才会显示出来。
我明明设置的代码都是一样的啊??怎么一运行只显示第一个?其他的为什么直接不现实而是要通过点击显示呢?
展开
 我来答
Reyzhang
2014-03-27 · TA获得超过1111个赞
知道小有建树答主
回答量:805
采纳率:85%
帮助的人:672万
展开全部
在组装uitabbarcontroller的代码中来指定各个uitabbaritem.而不是在各个被包含的viewcontroller中

UITabbarController *tabController=[[UITabbarController alloc] init];
self.vc1=[[UIViewController alloc] init];
slef.vc1.tabbarItem=......;

self.vc2=[[UIViewController alloc] init];
self.vc2.tabbarItem = ....;

......

NSArray *vcs=@[self.vc1,self.vc2,....];

[tabController setViewControllers:vcs];
追问
我试了一下,的确可以了。。。那我们一般定义一个TabBarController一般是怎样建的呢?是要新建一个继承TabBarController的类,然后里面放TabBarItem?可是我们的viewController都是独立的类啊。。
追答
UITabBarController 不是有一个NSArray 类型的viewcontrollers 属性吗?这个属性存储的就是直接或间接继承自UIViewController的类的集合。UITabbarController 通过你提供的这个集合来呈现,呈现的个数取决于viewcontrollers的个数。
再一个就是viewcontroller 是viewcontroller 。 tabbarItem 是UItabbarcontroller 用于控制显示给我们看的项,它们和viewcontroller是对应关系。
Storm代理
2023-07-25 广告
StormProxies是一家可靠的代理服务提供商,提供原生IP(住宅原生IP)和高匿名代理服务。以下是关于StormProxies的原生IP服务的一些信息:1. 住宅原生IP:StormProxies提供的住宅原生IP是指从真实的家庭或企... 点击进入详情页
本回答由Storm代理提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式