简体   繁体   English

如何在iOS 6和iOS 7中为标签栏项设置图像

[英]How to set image for tabbar item in ios 6 and ios 7

How to set image for tabbar item in ios 6 and ios 7. My tabbar only run in ios 7 because imageWithRenderingMode method is not run in ios 6. How to set tab bar item run in ios 6 and 7. Thank in advance. 如何在ios 6和ios 7中设置标签栏项目的图像。我的标签栏仅在ios 7中运行,因为imageWithRenderingMode方法未在ios 6中运行。如何设置标签栏项目在ios 6和7中运行。 This is my code. 这是我的代码。

 UITabBarController *tabBarController = (UITabBarController *)self.window.rootViewController;
 UITabBar *tabBar = tabBarController.tabBar;
 UITabBarItem *tabBarItem1 = [tabBar.items objectAtIndex:0];
 UITabBarItem *tabBarItem2 = [tabBar.items objectAtIndex:1];
 UITabBarItem *tabBarItem3 = [tabBar.items objectAtIndex:2];
 UITabBarItem *tabBarItem4 = [tabBar.items objectAtIndex:3];

 tabBarItem1.title = @"Phim mới";
 tabBarItem2.title = @"Xem phim";
 tabBarItem3.title = @"GS Xoay";
 tabBarItem4.title = @"Về chúng tôi";

 [tabBarItem1 setImage:[[UIImage imageNamed:@"ic1.jpg"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]];

 [tabBarItem2 setImage:[[UIImage imageNamed:@"ic2.jpg"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]];

 [tabBarItem3 setImage:[[UIImage imageNamed:@"ic3.jpg"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]];

 [tabBarItem4 setImage:[[UIImage imageNamed:@"ic4.jpg"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]];
 return YES;

You need to check to see if the method exists at runtime: 您需要检查该方法在运行时是否存在:

UIImage *image1 = [UIImage imageNamed:@"ic1.jpg"];
if ([image1 respondsToSelector:@selector(imageWithRenderingMode:)]) {
    [tabBarItem1 setImage:[image1 imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
    [tabBarItem2 setImage:[[UIImage imageNamed:@"ic2.jpg"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]];
    [tabBarItem3 setImage:[[UIImage imageNamed:@"ic3.jpg"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]];
    [tabBarItem4 setImage:[[UIImage imageNamed:@"ic4.jpg"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]];
} else {
    [tabBarItem1 setImage:image1];
    [tabBarItem2 setImage:[UIImage imageNamed:@"ic2.jpg"]];
    [tabBarItem3 setImage:[UIImage imageNamed:@"ic3.jpg"]];
    [tabBarItem4 setImage:[UIImage imageNamed:@"ic4.jpg"]];
}

I suggest you read the " SDK Compatibility Guide " in the documentation. 建议您阅读文档中的“ SDK兼容性指南 ”。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM