Какого размера должны быть изображения TabBar?

У меня есть значки для вкладки размером 100.

Я проверил в руководствах Apple по человеческому интерфейсу и там говорится, что размер изображения должен быть 30x30 /60x60.

Но так как высота контроллера панели вкладок равна 50, я сохранил размер изображения в 50x50.

Теперь, когда я запускаю проект, я вижу уродливый дизайн ниже:

введите описание изображения здесь

Есть идеи, какой размер изображения мне следует использовать, чтобы дизайн был идеальным?

Примечание. Я также не пишу текст (например, "Домой", "Поиск" и т. д.). Текст кнопки вкладки находится на самом изображении.

82 голоса | спросил Fahim Parkar 6 AM00000020000001531 2013, 02:07:15

6 ответов


0

30x30 - это точки, что означает 30px @ 1x, 60px @ 2x, а не где-то между ними. Кроме того, вставлять заголовок вкладки в изображение не очень хорошая идея - у вас будут довольно плохие результаты доступа и подобного рода локализация.

ответил garrettmurray 6 AM00000020000001431 2013, 02:14:14
0

В соответствии с Руководством по интерфейсу Apple для человека :

@ 1x: около 25 x 25 (максимум: 48 x 32)

@ 2x: примерно 50 x 50 (максимум: 96 x 64)

@ 3x: примерно 75 x 75 (макс. 144 x 96)

ответил rsc 1 AMpWed, 01 Apr 2015 07:56:03 +030056Wednesday 2015, 07:56:03
0

Согласно последним рекомендациям Apple по интерфейсу для человека

В портретной ориентации значки над вкладками отображаются над заголовками вкладок. В альбомной ориентации значки и заголовки отображаются рядом. В зависимости от устройства и ориентации система отображает обычную или компактную панель вкладок. Ваше приложение должно включать настраиваемые значки панели вкладок для обоих размеров.

 введите описание изображения здесь

 введите описание изображения здесь

ответил Mihir Oza 7 ThuEurope/Moscow2017-12-07T08:22:37+03:00Europe/Moscow12bEurope/MoscowThu, 07 Dec 2017 08:22:37 +0300 2017, 08:22:37
0
ответил Allen 8 FebruaryEurope/MoscowbWed, 08 Feb 2017 10:11:12 +0300000000amWed, 08 Feb 2017 10:11:12 +030017 2017, 10:11:12
0

В соответствии с моей практикой, я использую значок элемента панели вкладок iPad размером 40 x 40, для сетчатки - 80 X 80.

Из ссылки Apple. https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/MobileHIG/BarIcons.html#//apple_ref/doc/uid/TP40006556-CH21-SW1

Если вы хотите создать значок панели, который выглядит так, как будто он относится к семейству иконок iOS 7, используйте очень тонкий штрих, чтобы нарисовать его. В частности, 2-пиксельный штрих (высокое разрешение) хорошо работает для подробных значков, а 3-пиксельный штрих - для менее подробных значков.

Независимо от визуального стиля значка, создайте значок панели инструментов или панели навигации следующих размеров:

Около 44 х 44 пикселей Около 22 х 22 пикселей (стандартное разрешение) Независимо от визуального стиля значка, создайте значок панели вкладок следующих размеров:

Около 50 x 50 пикселей (максимум 96 x 64 пикселей) При стандартном разрешении около 25 x 25 пикселей (максимум 48 x 32 пикселей)

ответил firelyu 9 thEurope/Moscowp30Europe/Moscow09bEurope/MoscowTue, 09 Sep 2014 06:34:00 +0400 2014, 06:34:00
0

Поднимите пальцы, прежде чем использовать коды, пожалуйста !!! Создайте изображение, которое полностью покрывает весь элемент панели вкладок для каждого элемента. Это необходимо для использования созданного вами изображения в качестве кнопки элемента панели вкладок. Убедитесь, что соотношение высоты и ширины одинаково для каждого элемента панели вкладок. Тогда:

UITabBarController *tabBarController = (UITabBarController *)self;
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];

int x,y;

x = tabBar.frame.size.width/4 + 4; //when doing division, it may be rounded so that you need to add 1 to each item; 
y = tabBar.frame.size.height + 10; //the height return always shorter, this is compensated by added by 10; you can change the value if u like.

//because the whole tab bar item will be replaced by an image, u dont need title
tabBarItem1.title = @"";
tabBarItem2.title = @"";
tabBarItem3.title = @"";
tabBarItem4.title = @"";

[tabBarItem1 setFinishedSelectedImage:[self imageWithImage:[UIImage imageNamed:@"item1-select.png"] scaledToSize:CGSizeMake(x, y)] withFinishedUnselectedImage:[self imageWithImage:[UIImage imageNamed:@"item1-deselect.png"] scaledToSize:CGSizeMake(x, y)]];//do the same thing for the other 3 bar item
ответил James 5 J0000006Europe/Moscow 2016, 10:12:02

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132