2011-02-14 65 views
0
UITabBar *frameTabBar = [[UITabBar alloc] initWithFrame:CGRectMake(0, 698, 1024, 70)]; 
UITabBarItem *frameTabBarItem1 = [[UITabBarItem alloc] initWithTitle:@"Fee" image:nil tag:0]; 
UITabBarItem *frameTabBarItem2 = [[UITabBarItem alloc] initWithTitle:@"Dev" image:nil tag:1]; 
NSArray *frameTabBarItemArray = [[NSArray alloc] initWithObjects:frameTabBarItem1,frameTabBarItem2,nil]; 
[frameTabBar setItems:frameTabBarItemArray]; 

但是我的UITabBar中没有显示任何项目。 我的代码有什么问题。 谢谢。在UITabBar中设置UITabBarItem

回答

1

我敢肯定的是,项目在那里,你只是:

@interface MyViewController : UIViewController <UITabBarDelegate> 
在.m文件

在.h文件中

无法看到它们,因为您没有设置图像并且标签超出了可见框。

UITabBar *frameTabBar = [[UITabBar alloc] initWithFrame:CGRectMake(0, 698, 1024, 70)]; 

698 + 70 = 768

768是一个iPad的在横向方向的高度。但是,如果有一个状态栏,则可用帧的大小要小20个像素。而20像素恰恰是隐藏标签标签的高度。

所以刚刚从y位置减去20个像素,你很好。

UITabBar *frameTabBar = [[UITabBar alloc] initWithFrame:CGRectMake(0, 678, 1024, 70)]; 
0

我相信问题是你应该在你的头文件中实现tabBarDelegate并将你的ViewController设置为委托?

frameTabBar.delegate=self; 

希望这将有助于

+0

谢谢您的答复,但我认为这是不委派问题。 – Jerry 2011-02-14 07:49:15

0

尝试它肯定会工作......

[self.view addSubview:frameTabBar]; 

感谢 潘卡肖汉