UITabBarItem 更改图像高度和宽度
Posted
技术标签:
【中文标题】UITabBarItem 更改图像高度和宽度【英文标题】:UITabBarItem Change Image Height and Width 【发布时间】: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 谢谢! 【参考方案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 点击两次后图片缩放有没有找到解决办法?以上是关于UITabBarItem 更改图像高度和宽度的主要内容,如果未能解决你的问题,请参考以下文章