码迷,mamicode.com
首页 > 其他好文 > 详细

设置UITabBarController上ImageInsets后点击不断缩小

时间:2016-08-19 11:08:04      阅读:185      评论:0      收藏:0      [点我收藏+]

标签:

  最近遇到了这样一个情况,客户要求做出这种效果的UITabBarController。

技术分享

  通过各种查询,得出UITabBarController有这样一个属性,是设置它的图片距上下左右距离的属性:

        navSmartLifeController.tabBarItem.imageInsets = UIEdgeInsetsMake(-10, 0, 17, 0)

  欣喜地发现成功出现了客户所需要的效果,虽说丑了点儿-.-

技术分享

  但是,新的风暴马上就出现了。点一下闪一秒我都忍了,谁告诉我为什么会越点越小

技术分享

 

  心里是拒绝的。。

  然后开始了如下的尝试:

  1.将设置ImageInsets从storyBoard改为代码手写,没变化;

  2.遵守UITabBarControllerDelegate协议,在协议方法中判断点击的控制器后更改ImageInsets。仍无卵用;

  最终,发现了一个让我激动的方法:

  3.

UIEdgeInsetsMake(<#T##top: CGFloat##CGFloat#>, <#T##left: CGFloat##CGFloat#>, <#T##bottom: CGFloat##CGFloat#>, <#T##right: CGFloat##CGFloat#>)

  仔细观察,发现UIEdgeInsets是上左下右这样区分的,所以要设置上下一致,左右一致,例如(-5,0,5,0)

  完成。

  

  卡了三个小时的Bug用了三分钟解决了。希望大家能有所收获,也多多了解UIEdgeInsets这一神奇的属性。

设置UITabBarController上ImageInsets后点击不断缩小

标签:

原文地址:http://www.cnblogs.com/SoulKai/p/5786772.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!