[英]customizing a UITabBar ios7-ios8 buttons and background
我一直在努力更改uitabbar的圖標和背景,以使其看起來像我想要的樣子。 每次更改背景顏色時,它都會顯示顏色,但不會像我給定的特定顏色那樣固定。 運行時,我為這些項目設置的圖像也會變灰。
所以我有一個通過開始按鈕開始的簡歷。 按鈕代碼:
- (IBAction)start:(id)sender {
UIStoryboard *storyBoard = [self storyboard];
Start *startViewController = [storyBoard instantiateViewControllerWithIdentifier:@"start"];
[self presentViewController:startViewController animated:NO completion:nil];}
如您所見,它僅發送到第二個VC,即UITabBarController。 在appdelegate中,我嘗試過:
Start *tabController = (Start *)self.window.rootViewController;
//tab1
UITabBar *tabBar = (UITabBar *)tabController.tabBar;
UITabBarItem *item1 = [tabBar.items objectAtIndex:0];
[item1 setImage:[[UIImage imageNamed:@"1.png"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]];
//tab2
UITabBarItem *item2 = [tabBar.items objectAtIndex:1];
[item2 setImage:[[UIImage imageNamed:@"2.png"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]];
//tab3
UITabBarItem *item3 = [tabBar.items objectAtIndex:2];
[item3 setImage:[[UIImage imageNamed:@"3.png"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]];
//tab4
UITabBarItem *item4 = [tabBar.items objectAtIndex:3];
[item4 setImage:[[UIImage imageNamed:@"4.png"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]];
但它似乎沒有用。 我看上去很多,但我能找到的只是關於setFinishedSelectedImage:withFinishedUnselectedImage:的教程。 這實際上並沒有幫助導致它被棄用。 到目前為止,我所能做的就是從interfacebuilder設置uitabbar。
要更改顏色,我只是更改了色調和背景色。 也嘗試將uiimageview放在uitabbar后面,但這似乎也不起作用。
要統一UITabBar ios7-ios8,請使用此代碼
UITabBarItem *item0 = [self.tabBar.items objectAtIndex:0];
UITabBarItem *item1 = [self.tabBar.items objectAtIndex:1];
UITabBarItem *item2 = [self.tabBar.items objectAtIndex:2];
UITabBarItem *item3 = [self.tabBar.items objectAtIndex:3];
item0.title = @"item0title";
item1.title = @"item1title";
item2.title=@"item2title";
item3.title=@"item3title";
[item0 setImage:[[UIImage imageNamed:@"imagename"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]];
[item0 setSelectedImage:[[UIImage imageNamed:@"imagename"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]];
[item1 setImage:[[UIImage imageNamed:@"imagename"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]];
[item1 setSelectedImage:[[UIImage imageNamed:@"imagename"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]];
[item2 setImage:[[UIImage imageNamed:@"imagename"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]];
[item2 setSelectedImage:[[UIImage imageNamed:@"imagename"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]];
[item3 setImage:[[UIImage imageNamed:@"imagename"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]];
[item3 setSelectedImage:[[UIImage imageNamed:@"imagename"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]];
//[[UITabBar appearance] setSelectedImageTintColor:[uicolor whitcolor]];
//[[UITabBar appearance] setBarTintColor:[UIColor yellowColor]];
//[[UITabBar appearance] setTintColor:[UIColor yellowColor]];
[[UITabBarItem appearance] setTitleTextAttributes:@{ NSForegroundColorAttributeName : [UIColor yellowColor] }
forState:UIControlStateSelected];
[[UITabBarItem appearance] setTitleTextAttributes:@{ NSForegroundColorAttributeName : [UIColor whiteColor] }
forState:UIControlStateNormal];
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.