最大化UITabBarItem图像的大小

时间:2014-01-02 02:41:51

标签: ios objective-c ios7 uitabbarcontroller uitabbaritem

我想创建一个带有Icon-image的自定义UITabBarItem,其大小比平常大一点。问题是我不想使用完全替换背景图像,因为我希望有TabBar的半透明效果。

所以我想知道两件事:

  1. 现在,适用于新版iOS7 UITabBarItems及其图标

  2. 的尺寸正确
  3. 如何修改图标的大小以显示更大的图标,因为我不想显示标题。没有标题它有点小。为了保持半透明效果的显示。

  4. 任何帮助或建议都会很棒!

3 个答案:

答案 0 :(得分:5)

无论图标的视觉样式如何,都要创建以下尺寸的工具栏或导航栏图标:

约44 x 44像素
约22 x 22像素(标准分辨率)
无论图标的视觉样式如何,都要创建以下尺寸的标签栏图标:

约50 x 50像素(最大96 x 64像素)
标准分辨率约为25 x 25像素(最大48 x 32像素)

看一下这些Developers guide for bar & buttons
Bar icons in Human interface guidelines

答案 1 :(得分:2)

要增加尺寸,请尝试以下代码,

NSArray *items = self.tabBarController.tabBar.items;

for (UITabBarItem *b in items)
        b.imageInsets = UIEdgeInsetsMake(-5, -5, -5, -5);

如果您想减少,请尝试将正值传递给UIEdgeInsetsMake(top,left,bottom,right)

答案 2 :(得分:1)

Swift 4.2

let array = tabBarController?.tabBar.items
for controller in array! {
    controller.tabBarItem.imageInsets = UIEdgeInsets(top: 5, left: -5, bottom: -5, right: -5)
}