0

i am using tabbarcontroller in my project. Here is my storyboard

enter image description here


In all view controllers tabbar item, I set images like below


enter image description here

I make a class of tabbarcontroller and do coding below

    UITabBar *tabBar = self.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];
    UITabBarItem *tabBarItem5 = [tabBar.items objectAtIndex:4];

//    [tabBarItem1 setImage:[[UIImage imageNamed:@"ic_home_tab_home_sel"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]];
//    [tabBarItem1 setSelectedImage:[[UIImage imageNamed:@"ic_home_tab_home_sel"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]];




    [tabBarItem1 setFinishedSelectedImage:[UIImage imageNamed:@"ic_home_tab_home_sel"] withFinishedUnselectedImage:[UIImage imageNamed:@"ic_home_tab_home"]];
    [tabBarItem2 setFinishedSelectedImage:[UIImage imageNamed:@"ic_home_tab_profile_sel"] withFinishedUnselectedImage:[UIImage imageNamed:@"ic_home_tab_profile"]];
    [tabBarItem3 setFinishedSelectedImage:[UIImage imageNamed:@"ic_home_create_post_sel"] withFinishedUnselectedImage:[UIImage imageNamed:@"ic_home_create_post"]];
    [tabBarItem4 setFinishedSelectedImage:[UIImage imageNamed:@"ic_home_tab_chat_sel"] withFinishedUnselectedImage:[UIImage imageNamed:@"ic_home_tab_chat"]];
    [tabBarItem5 setFinishedSelectedImage:[UIImage imageNamed:@"ic_home_tab_setting_sel"] withFinishedUnselectedImage:[UIImage imageNamed:@"ic_home_tab_setting"]];

But When I run it, enter image description here

First time all images are mixed, But when I clicked them one by one like in Video then all images sets.
I dont know why this happend?
Please help me
Thank you

Jitendra Modi
  • 2,344
  • 12
  • 34

1 Answers1

0

I also faced same problem then I used below code in appdelegate

 UINavigationController *navigationVC1 = [[UINavigationController alloc]initWithRootViewController:viewController1];
    navigationVC1.tabBarItem = [[UITabBarItem alloc] initWithTitle:@"My Trips"
                                                             image:[UIImage imageNamed:@"cab.png"]
                                                               tag:1];

    UINavigationController *navigationVC2 = [[UINavigationController alloc]initWithRootViewController:viewController2];
    navigationVC2.tabBarItem = [[UITabBarItem alloc] initWithTitle:@"My Children"
                                                             image:[UIImage imageNamed:@"kids-couple.png"]
                                                               tag:2];

try like this.

Himanth
  • 2,381
  • 3
  • 28
  • 41