Iphone UITabBarItem изображение не отображается - PullRequest
0 голосов
/ 13 февраля 2012

У меня вопрос, как я мог бы добавить значок childViewController для UITabBarController.Мой код:

UITabBarController *tabBar=[[UITabBarController alloc]init];
MyUIViewController *mc=[[MyUIViewController alloc]init];
[tabBar addChildViewController:mc];
[self.navigationController pushViewController:tabBar animated:YES];

Заранее спасибо.

Ответы [ 3 ]

1 голос
/ 13 февраля 2012

Пожалуйста, попробуйте это

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.
0 голосов
/ 13 февраля 2013

Я только что обнаружил, что рабочий стол не чувствителен к регистру, однако устройство требует, чтобы код имел одинаковый буквенно-цифровой регистр (верхний / нижний).Убедитесь, что имя файла одинаковое ... вплоть до регистра (верхний / нижний)!

Пример:

Имя файла на диске "first.png" лучше представить в виде -> self.tabBarItem.image = [UIImage imageNamed: @ "first"];

НЕ - НЕ --- НЕ

self.tabBarItem.image = [UIImage imageNamed: @ "First"];

Заглавная буква "F" надрала мне задницу за3 часа сегодня!Я потерял 3 часа своей жизни сегодня из-за этого упущения.Надеюсь, это поможет кому-то еще.

0 голосов
/ 14 февраля 2012

Я решил эту проблему, добавив атрибут и свойство в 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];
...