【问题标题】:UITabBarItem Change Image Height and WidthUITabBarItem 更改图像高度和宽度
【发布时间】:2013-12-10 16:07:28
【问题描述】:

我有一个没有标题且只有图像的 UITabBarItem。我想知道如何更改图像大小,以便它可以占据整个 UITabBarItem。

我搜索了整个互联网,但一无所获。

我试过了:

UIStoryboard *storyBoard = [UIStoryboard storyboardWithName:@"Main_Storyboard" bundle:nil];
UITabBarController *tabBarController = [storyBoard instantiateViewControllerWithIdentifier:@"tab"];
UITabBar *tabBar = tabBarController.tabBar;
UITabBarItem *tabBarItem1 = [tabBar.items objectAtIndex:0];
UITabBarItem *tabBarItem2 = [tabBar.items objectAtIndex:1];
UITabBarItem *tabBarItem3 = [tabBar.items objectAtIndex:2];

tabBarItem1.imageInsets = UIEdgeInsetsMake(0, -10, -6, -10);

但没有任何改变。

谢谢!

【问题讨论】:

  • 检查我编辑的答案
  • @llario 还是不行
  • 让我看看你修改过的代码
  • @llario 刚刚编辑的问题
  • @llario 谢谢!

标签: ios uitabbar uitabbaritem


【解决方案1】:

根据苹果文档,TabBar 上图片的最大尺寸为 30x30(视网膜显示为 60x60)。

我认为如果不拉伸图像就不可能占据 TabBar 的整个高度。我认为最好的解决方案是使用 imageInset 在 TabBar 中居中图像

tabBarItem1.imageInsets = UIEdgeInsetsMake(6, 0, -6, 0);

否则,您可以使用此 imageInset 并像屏幕截图中那样拉伸图像

tabBarItem1.imageInsets = UIEdgeInsetsMake(0, -10, -6, -10);

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions  {


 UITabBarController *tabBarController = (UITabBarController *)self.window.rootViewController;

 UITabBar *tabBar = tabBarController.tabBar;
 UITabBarItem *tabBarItem1 = [tabBar.items objectAtIndex:0];
 UITabBarItem *tabBarItem2 = [tabBar.items objectAtIndex:1];
 UITabBarItem *tabBarItem3 = [tabBar.items objectAtIndex:2];

 //add image to tabbarItems

 tabBarItem1.imageInsets = UIEdgeInsetsMake(0, -10, -6, -10);
}

【讨论】:

  • 非常感谢您的回答。现在我的应用看起来非常漂亮:)
  • @Android_kalai 很高兴有帮助 ;-)
  • 嘿,在图片上点击两次。它的缩放比例:S
  • 点击两次后图片缩放有没有找到解决办法?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-12-21
  • 2014-09-26
  • 2014-08-03
相关资源
最近更新 更多