我正在尝试使用以下代码在我的iPad应用程序中将UIButton添加到UITabBar:
TabBarAppDelegate *delegate = (TabBarAppDelegate *)[[UIApplication sharedApplication] delegate];
UITabBarController *tabbar = (UITabBarController *)delegate.window.rootViewController;
UIButton *b = [[UIButton alloc] initWithFrame:CGRectMake(0, 0, 20, 20)];
[tabbar.view addSubview:b];
tabbar
没问题并且引用了正确的tabbar项(例如,我可以使用以下代码切换活动标签:[tabbar setSelectedIndex:1];
)。
此代码由其他一些自定义按钮调用。虽然日志中没有错误,但按钮不会显示在标签栏上:(
我做错了什么以及将UIButton添加到UITabBar的正确方法是什么? :)这是一个例子:
http://gyazo.com/99fc0df0ed47dd6be91b558161cab4f9.png
提前致谢!
编辑:好的,如果我坚持使用UIToolbar选项,那么在视图之间切换的正确方法是什么?创建ViewContollers的NSArray并将相应的ViewController视图加载到活动视图?
答案 0 :(得分:4)
您无法直接向UIButton
添加UITabBarController
。来自UITabBarController
Class Reference:
您永远不应该访问标签栏控制器的标签栏视图 直接
此外,文件内容如下:
标签栏项目通过其相应的视图进行配置 控制器。要将标签栏项目与视图控制器相关联,请创建 UITabBarItem类的新实例,适当地配置它 对于视图控制器,并将其分配给视图控制器 tabBarItem属性。如果您没有为其提供自定义标签栏项目 在视图控制器中,视图控制器会创建一个默认项 不包含图像和视图控制器标题中的文本 属性。
因此,您有两个选择:
UITabBarItem
(documentation)并添加。UIToolBar
,但请记住添加UIBarButtonItem
s。答案 1 :(得分:1)