【问题标题】:Iphone UITabBarItem image not shownIphone UITabBarItem 图像未显示
【发布时间】:2013-03-22 18:48:00
【问题描述】:
我的问题是如何添加 UITabBarController 的 childViewController 的图标。我的代码是:
UITabBarController *tabBar=[[UITabBarController alloc]init];
MyUIViewController *mc=[[MyUIViewController alloc]init];
[tabBar addChildViewController:mc];
[self.navigationController pushViewController:tabBar animated:YES];
提前致谢。
【问题讨论】:
标签:
iphone
uitabbarcontroller
addchild
【解决方案1】:
请试试这个
UITabBarController *tabController = [[UITabBarController alloc] init];
SomeViewController *viewController = [[SomeViewController alloc] initWithNibName:@"SomeViewController" bundle:nil];
[tabController setViewControllers:[NSArray arrayWithObject:viewController]];//Setting child viewController Array.
UITabBarItem *item = (UITabBarItem *)[tabController.tabBar.items objectAtIndex:0]; //for first view
[item setImage:[UIImage imageNamed:@"someImage.png"]]; //Image should be 23px X 23px ,I think so.
【解决方案2】:
我通过在 MyUIViewController 中添加属性和属性解决了这个问题:
@interface MyUIViewController{
UITabBarItem *tabBarItem;
}
@property (nonatomic, retain) UITabBarItem *tabBarItem;
然后用图片初始化:
UITabBarController *tabBar=[[UITabBarController alloc]init];
MyUIViewController *mc=[[MyUIViewController alloc]init];
mc.tabBarItem=[[UITabBarItem alloc] initWithTitle:@"MyTitle" image:[UIImage imageNamed:@"myImage.png"] tag:0];
[tabBar addChildViewController:mc];
[self.navigationController pushViewController:tabBar animated:YES];
【解决方案3】:
我刚刚发现桌面不区分大小写,但是设备要求代码具有相同的字母数字大小写(大写/小写)。确保文件的名称是相同的......直到大小写(上/下)!
例子:
“first.png”在磁盘上的文件名最好用-->
self.tabBarItem.image = [UIImage imageNamed:@"first"];
不是——不是——不是
self.tabBarItem.image = [UIImage imageNamed:@"First"];
大写的“F”今天踢了我 3 个小时!由于这个疏忽,我今天失去了 3 个小时的生命。希望这对其他人有帮助。