我正在开发一款将iOS 7.1作为其部署目标的应用。到目前为止一切正常,但有一个巨大的问题,标签栏图像没有显示。这很令人困惑,因为它们出现在iOS 8模拟器上运行时,我正在使用Xcode 6 beta 1。
我已经设置了两张图片。尺寸为60x60和70x60。所以尺寸似乎不是问题。我在Interface Builder中设置了图像。但是,当将标签栏图像记录到控制台时,它将返回nil。我已经尝试在代码中设置图像,并使用相同的方法将其记录到控制台,我现在有一个图像的内存地址,但它仍然没有显示。
在Google和stackoverflow上搜索答案时,我发现了这种方法:
self.tabBarItem.image = [[UIImage imageNamed:@"IMAGE"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
self.tabBarItem.selectedImage = [[UIImage imageNamed:@"IMAGE"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
NSLog(@"%@", self.tabBarItem.image);
这显然适用于一些用户,但不适合我。我无法理解这一点,如果有人能帮助我,我会很高兴。
答案 0 :(得分:0)
我对你正在做的事情有一种感觉,但它仍然不清楚。
您有一个标签栏,但您有一个显示标签栏项目的插座。
这不是你想要的方式。您可以为选项卡栏创建一个插座,然后使用以下内容添加自定义项目
UIImage *defaultImage = [UIImage imageNamed:@"ImageName"];
UIImage *selectedImage = [UIImage imageNamed:@"ImageName"];
UITabBarItem *itemZero = [[UITabBarItem alloc] initWithTitle:@"Item One" image:defaultImage selectedImage:selectedImage];
UITabBarItem *itemOne = [[UITabBarItem alloc] initWithTitle:@"Item Two" image:defaultImage selectedImage:selectedImage];
NSArray *items = @[itemZero,itemOne];
[self.tabBar setItems:items animated:animated];