我想知道iOS的ui设计关于ui元素大小调整的最佳实践是什么,尤其是按钮。在我的例子中,所有按钮都基于图像,没有文字。
我看到两种方法
PRO:
CON:
PRO:
CON:
我忘记了什么吗?或者我弄错了?
现在我正在完全相对于屏幕设计ui。因此,假设一个按钮的宽度为屏幕宽度的10%,宽高比为1:1。当ui完全相对时,所有设备上的一切似乎都是一致的。但我的问题始于@ 2x密度按钮。 iphone 4的宽度(纵向模式)为640,而ipad2的宽度为768.我应该创建宽度为77px或68px的@ 2x,10%按钮图像吗?我会说77因为缩小比升级更好。
嗯,这引出了我的问题:
设计用户界面的最佳做法是什么?我们应该如何处理按钮的图像设计?
答案 0 :(得分:0)
通常问题是文本被拉长了。
您可以通过以下方式设置拉伸区域:
https://developer.apple.com/library/ios/recipes/xcode_help-image_catalog-1.0/chapters/SlicinganImage.html
如果使用渐变并且在拉伸时变得模糊,则需要使用Core Graphics绘制渐变。
答案 1 :(得分:0)
我会说在iOS中布置图像按钮的没有终极方法,它总是取决于你想要实现的目标。
在您的情况下,我会建议采用以下方法:
使用布局约束来正确定位按钮。
仅使用
间距约束,没有宽度或高度约束!
设置按钮的图像(在Interface Builder或代码中)。
确保以所有三种分辨率@ 1x,@ 2x,@ 3x提供每个图像资源强>
如果连续有多个按钮,则每个按钮都有不同的水平压缩阻力优先级。这样可以确保如果您的按钮并非全部适合屏幕,则一个(或多个)按钮将按比例缩小以适应。
将图像指定给UIButton
时,该图像将确定按钮的intrinsicContentSize
。因此,按钮将自动获取图像的大小(如果没有其他具有更高优先级的约束),并且只有在绝对必要时才会缩小(参见上面的数字3)。
只有在按钮旁边留下灵活空间时,才能使用此方法。例如,如果您打算将屏幕平均分成三列,并且每个按钮应该占据列的整个宽度,则除了屏幕尺寸较小的设备之外,您可以让系统按比例缩小图像。它总是取决于您是否可以允许按钮自己调整大小,或者是否需要从超级视图强制按钮的宽度(或高度)。