UIButtons 在横向和较小的设备上被压扁
UIButtons squished on landscape and smaller devices
我通过在垂直堆栈视图中嵌套水平堆栈视图为我的应用程序构建了 UI。在 iPhone 8 Plus 上,UI 按钮在纵向和横向方向上均按设计显示。下面是 iPhone 8 Plus 模拟器的横向屏幕截图。
堆栈视图采用填充对齐和填充均匀分布。每个按钮的内容模式都设置为 Aspect Fit,当在较小的设备上测试时,UI 按钮会被压扁并且失去纵横比。下面是 iPhone SE 模拟器上的横向屏幕截图。
如何防止图像被挤压?
您可以通过编程方式设置图像,并将按钮的 imageView 的 contentMode 设置为 center 或 aspectFit。
settingsButton.imageView?.contentMode = .center
settingsButton.setImage(UIImage.init(named: "imagename"), for: .normal)
或者您可以更改 UIButton 的约束,并为高度和宽度指定纵横比 1:1。
我通过在垂直堆栈视图中嵌套水平堆栈视图为我的应用程序构建了 UI。在 iPhone 8 Plus 上,UI 按钮在纵向和横向方向上均按设计显示。下面是 iPhone 8 Plus 模拟器的横向屏幕截图。
堆栈视图采用填充对齐和填充均匀分布。每个按钮的内容模式都设置为 Aspect Fit,当在较小的设备上测试时,UI 按钮会被压扁并且失去纵横比。下面是 iPhone SE 模拟器上的横向屏幕截图。
如何防止图像被挤压?
您可以通过编程方式设置图像,并将按钮的 imageView 的 contentMode 设置为 center 或 aspectFit。
settingsButton.imageView?.contentMode = .center
settingsButton.setImage(UIImage.init(named: "imagename"), for: .normal)
或者您可以更改 UIButton 的约束,并为高度和宽度指定纵横比 1:1。