2015-04-29 4 views
0

В моем приложении я использовал UITabBarController.Как установить изображение TabBar в UITabBarController

Я действительно смущаюсь о чем image size должно быть там для UITabBar. Он должен поддерживать все устройства. iPhone 4s,5,5s,5c,6,6 plus.

Иногда это создает пространство между вкладками. Если я изменю image size, то иногда он выглядит размытым.

I обычная почта, @2x а также @3x.

@3x - 312*180 

@2x - 160*120 

normal - 80*56 

Так, согласно моему пониманию iPhone 6 следует принимать @2x образ, но он не принимает его. Между вкладками в iPhone 6 есть пробел. Поэтому я программно устанавливаю изображения для iPhone 6 и присваиваю размер 93*56. Затем пробелы между вкладками удалены и установлены правильно. Но теперь какая проблема, с которой я столкнулся. Изображения выглядят размытыми в iPhone 6. Не знаю, что делать сейчас.

Может кто-нибудь, пожалуйста, помогите мне здесь? Как управлять изображениями вкладок, которые поддерживают все устройства. Спасибо заранее!

enter image description here Вот мой код,

- (BOOL)application:(UIApplication)application didFinishLaunchingWithOptions:(NSDictionary)launchOptions { 
    // Override point for customization after application launch. 

    UIStoryboard *storyBoard = [UIStoryboard storyboardWithName:@"Main" bundle:nil]; 

    UITabBarController *tabController = [[UITabBarController alloc]init]; 

    UINavigationController *navController1 = [[UINavigationController alloc]initWithRootViewController:[storyBoard instantiateViewControllerWithIdentifier:@"ViewController1"]]; 

    UINavigationController *navController2 = [[UINavigationController alloc]initWithRootViewController:[storyBoard instantiateViewControllerWithIdentifier:@"ViewController2"]]; 

    UINavigationController *navController3 = [[UINavigationController alloc]initWithRootViewController:[storyBoard instantiateViewControllerWithIdentifier:@"ViewController3"]]; 

    UINavigationController *navController4 = [[UINavigationController alloc]initWithRootViewController:[storyBoard instantiateViewControllerWithIdentifier:@"ViewController4"]]; 

    tabController.viewControllers = [NSArray arrayWithObjects:navController1, navController2, navController3, navController4, nil]; 


    [[[tabController.viewControllers objectAtIndex:0] tabBarItem]setFinishedSelectedImage:[UIImage imageNamed:@"chords-active1.png"] withFinishedUnselectedImage:[UIImage imageNamed:@"chords1.png"]]; 

    [[[tabController.viewControllers objectAtIndex:2] tabBarItem]setFinishedSelectedImage:[UIImage imageNamed:@"progression-active1.png"] withFinishedUnselectedImage:[UIImage imageNamed:@"progression1.png"]]; 

    [[[tabController.viewControllers objectAtIndex:1] tabBarItem]setFinishedSelectedImage:[UIImage imageNamed:@"practice-selected.png"] withFinishedUnselectedImage:[UIImage imageNamed:@"practice.png"]]; 

    [[[tabController.viewControllers objectAtIndex:3] tabBarItem]setFinishedSelectedImage:[UIImage imageNamed:@"settings-active1.png"] withFinishedUnselectedImage:[UIImage imageNamed:@"settings1.png"]]; 

    self.window.rootViewController = tabController; 

    return YES; 
} 
+0

Эта ссылка поможет вам: http://stackoverflow.com/questions/25781422/image-resolution-for-new-iphone- 6-and-6-3x-support-added? Answertab = votes # tab-top – Yuyutsu

ответ

2

Следить за IconMatrix Guide предоставленный Apple. Вы получите все ..

+0

Я последовал за гидом. Но это не работает. Изображение становится слишком маленьким. – Gati

+0

Как вы устанавливаете изображения? Пожалуйста, вставьте код. –

+0

Также вы использовали пользовательский контроллер панели вкладок? –

Смежные вопросы