如何创建支持所有屏幕尺寸的视图?

How to create a view which supports all screen sizes?

大家好。我试图让一个应用程序看起来像 Viber 或任何其他带有拨号盘的应用程序来打电话给某人。但我不明白如何进行适当的设计,让应用程序在每个 iPhone 上看起来都一样。我正在努力实现这样的目标:

所以我想让整个键盘在所有 iPhone 上看起来都正常。我已经知道我需要为按钮添加 3 种分辨率的所有图像,因此对于 1x,我使用了 54x54、2x - 145x145、3x - 240x240。我在 320x480 (1x)、750x1334 (2x) 和 1242x2208 (3x) 中绘制了 3 个屏幕。所以在纸面上一切看起来都不错。但是在程序中,在iPhone 5s,我面临着这个:

如果我试图将 2x 图像的尺寸减小到 124x124(整个屏幕将是 640x1136,真正的 iPhone 5s 分辨率)everething 在 iPhone 5s 上看起来不错,但在 iphone 6(还有 6s)按钮看起来太小了。 所以我想了解我应该怎么做才能制作真正的 crossIOS 应用程序。任何帮助都会得到帮助...

你必须使用比例高度来实现这个

为此:

  • 在屏幕和任何按钮之间设置等高约束
  • 为所有按钮设置纵横比1:1
  • 根据按钮大小的要求设置倍数
  • 在所有按钮之间设置等高限制

现在你可以开始了。

是的,可以通过 3 种方式实现:

  1. 使用带有自动布局的故事板 参考 Url : https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/AutolayoutPG/

2.Using 具有自动布局的 xib 文件

3 使用屏幕高宽比制作自定义视图

将所有按钮放在每个UIView中,使用自动布局设置相对于UIView的约束(不限制按钮的高度或宽度),现在使用水平UIStackView,将分布设置为'fill equally'以填充一排。和一个垂直 UIStackView,将分布设置为 'fill equally' 以垂直填充行。