iOS 导航栏按钮被放大问题定位

2018-07-02  本文已影响25人  Steven_2016

        左侧导航栏按钮是自定义的,左边是imageView 右侧是label,设置完成后,发现,美工MM切的“+”图,在苹果手机上变大了,而安卓上是正常的。于是开始了定位之旅。

        第一步:请美工MM重新切图,

  第二步:运行测试;

  第三步:循环6次后,美工MM表示,切累了,长短,粗细能改的都改了,拒绝继续修图(手动尴尬)。

  第四步:仔细分析:图片要不就是模糊,要不就是被拉伸,感觉加载模式是不是有问题,以前不都是这么用的吗?

  第五步:思考:以前都是用的button,这次用的是imageView,两者有什么区别吗?

  第六步:换回button 肯定是可行的,但是这个问题始终会悬着,是不是imgeView 图片加载模式不对?

  第七步:如果是模式不对,那对的模式应该是啥?如果模式是对的,是不是大小有问题?

  第八步:一个一个测。

布局 导航栏按钮被放大 对比

  断点调试,发现图片加载模式默认为:0 即 UIViewContentModeScaleToFill 

  模式一个个替换,发现使用 UIViewContentModeCenter 时,效果如下:

Center

  屏蔽掉模式代码,修改图片尺寸为 18.效果如下:

18

  设置模式为UIViewContentModeCenter ,尺寸为18 效果如下:

Center && 18

  感觉 第一个效果好一些。

Center

  得出结论:使用ImageView 做item时,加载模式与大小都能影响效果,所以,如果想偷懒,那么直接给一个小点的尺寸或者单独设置一下加载模式为 UIViewContentModeCenter。

  这个结论千万不能让美工MM知道。。(手动尴尬)

上一篇 下一篇

猜你喜欢

热点阅读