UIButton没有显示按钮内的完整图像

时间:2017-07-13 03:07:05

标签: ios xcode

我尝试将UIButton(宽度:55,高度:55)设置为图像大小55 * 55。但是在我设置图像后,按钮就变成了这种方式

enter image description here

小于图像尺寸。我不知道如何让图像填满按钮。谁能给我一个暗示?或者我应该改为UIImageview吗?

5 个答案:

答案 0 :(得分:3)

您的图片是2倍,因此它看起来很小。

选项1 您可以将其移动到xcassets中的1x。

选项2 如果你想保持2倍。您需要110 x 110的高分辨率图像。

答案 1 :(得分:3)

像这样填充图像:

myButton.contentHorizontalAlignment = .fill
myButton.contentVerticalAlignment = .fill

答案 2 :(得分:2)

您可以选择内容模式,然后查看。chnage content mode and then see.

答案 3 :(得分:0)

来自Apple

  

iOS使用坐标系统在屏幕上放置内容。此坐标系基于点的测量,这些测量映射到显示中的像素。

来自Apple

的更多信息
  

一点不一定对应一个物理像素。

所有图像格式(PNG,JPG等)都使用像素来调整大小。您的图像是(55像素,55像素),您已将其放置在资产目录中的2倍比例因子位置。这告诉系统将图像解释为它的目标是比例因子为2x的屏幕,这意味着它是(27.5pt,27.5pt)。

您在积分中指定了按钮尺寸。因此,您将27.5x27.5图像放入55x55按钮。

将图像移动到资产目录中的1x插槽可以解决您的问题,但会牺牲质量。您的设计师的目的是使图像以特定分辨率显示。通过在具有2x比例因子的设备上的1x插槽中使用(55px,55px)资源,可以将图像的预期分辨率减半。

生产iOS开发的正确解决方案:

设计团队(可能是另一个人,或者可能是您)应该以1x,2x和3x比例因子呈现所有资产。 (对于Android,这些分别称为hdpi,xhdpi,xxhdpi以及Android支持更多比例因子)

开发人员在布置UI时应该专门用于分数。如果图像应为55x55,则应获得3张图像,55x55px,110x110px和165x165px。这将确保所有iOS设备上的图像 看起来 相同。

新方式

在Xcode 7中添加了more convenient way来处理不同内容比例因子的噩梦。您可以提供单个矢量图形作为PDF,Xcode将为您完成剩下的工作。这有许多好处,包括要管理的文件更少。这也意味着如果Apple推出4x比例因子设备,您需要做的就是重新编译您的应用程序。

答案 4 :(得分:-1)

您可以使用图片按钮

enter image description here