Позиция значка iOS 7 UITabBar

Есть ли способ отрегулировать положение значка UITabBar в iOS 7? Значок теперь блокирует значок панели вкладок немного больше, чем хотелось бы.

iOS 6: enter image description here

iOS 7: enter image description here

Ответ 1

Если возможно, вы можете указать способ, с помощью которого вы настраиваете изображение на панели вкладок?

У меня была та же проблема, что и вы, и исправил ее, используя UIImageRenderingModeAlwaysOriginal:

UIImage *image = // Your tab bar item image
UIImage *selected = // Your selected tab bar item image

image = [image imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
selected = [selected imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];

controller.tabBarItem = [[UITabBarItem alloc] initWithTitle:title
                                                      image:image
                                              selectedImage:selected];

Ура!

Ответ 2

Похоже, что значок помещается в определенную позицию относительно изображения. Поэтому, если у вас нет изображения, значок находится в верхнем левом углу tabBarItem.

Итак - чтобы поместить значок, отрегулируйте границу пустых пикселей вокруг .png, который вы используете для изображения tabBarItem.

Ответ 3

Невозможно настроить внешний вид значка.

Если вы действительно хотите, чтобы все было по-другому, я думаю, что выполнение пользовательского наложения на UITabBar должно быть довольно простым. Таким образом, вы можете поместить туда какой-либо пользовательский текст, а не только цифры.

Ответ 4

iOS 7 SDK обесценивает 3 ключевых метода, которые мы использовали для настройки табло

- (void)setFinishedSelectedImage:(UIImage *)selectedImage withFinishedUnselectedImage:(UIImage *)unselectedImage

- (UIImage *)finishedUnselectedImage

- (UIImage *)finishedSelectedImage

Они предлагают свои альтернативы в документах, как предлагает @Даниэль Амитай.

Документация здесь

https://developer.apple.com/library/ios/documentation/uikit/reference/UITabBarItem_Class/DeprecationAppendix/AppendixADeprecatedAPI.html#//apple_ref/occ/instm/UITabBarItem/setFinishedSelectedImage:withFinishedUnselectedImage: