下面用一个 Button 举例:
同一个 Button ,需要在不同大小的屏幕上适配 Button 的尺寸,使它在 4.0 尺寸上看起来要比在 4.7 或 5.5 尺寸上要小一些。
1. 使用 AutoLayout 分别设置约束 Leading, Top, Width, Height ,由于约束都是一个固定值,所以 Button 的大小在不同屏幕上都是一样。
2. 使用 AutoLayout 分别设置约束 Leading, Top, Bottom, Trailing, 由于约束都是一个固定值,所以这种情况在不同的屏幕上 Button 的大小被拉伸了,并不是我想要的效果。
有一种解决方案是,可以按屏幕的比例等比设置对应控件的约束值,但是这样实现起来比较麻烦。每一个控件的约束值都要单独计算,那么一个 View 上有很多个需要适配的控件就更麻烦了。
Google 关键词: view autolayout resize frame 并未找到有好的解决方案。
所以请教一下,正确的实现方式是什么?
同一个 Button ,需要在不同大小的屏幕上适配 Button 的尺寸,使它在 4.0 尺寸上看起来要比在 4.7 或 5.5 尺寸上要小一些。
1. 使用 AutoLayout 分别设置约束 Leading, Top, Width, Height ,由于约束都是一个固定值,所以 Button 的大小在不同屏幕上都是一样。
2. 使用 AutoLayout 分别设置约束 Leading, Top, Bottom, Trailing, 由于约束都是一个固定值,所以这种情况在不同的屏幕上 Button 的大小被拉伸了,并不是我想要的效果。
有一种解决方案是,可以按屏幕的比例等比设置对应控件的约束值,但是这样实现起来比较麻烦。每一个控件的约束值都要单独计算,那么一个 View 上有很多个需要适配的控件就更麻烦了。
Google 关键词: view autolayout resize frame 并未找到有好的解决方案。
所以请教一下,正确的实现方式是什么?