繁体   English   中英

Swift:如何根据iPhone(例如iPhone SE,iPhone 8)以编程方式更改标签/视图尺寸?

[英]Swift: How to programmatically change a label/view size depending on iPhone (eg. iPhone SE, iPhone 8)?

是否可以根据用户使用的iPhone以编程方式更改标签大小或视图大小?

因此,例如,我可以在代码中检测使用的是哪种手机,并根据使用的手机来更改视图或标签的宽度(即,在iPhone 8上更大而在iPhone SE上很小)?

好吧,所有其他答案都是正确的,您需要基于自动布局进行编码,以便您的UI组件能够动态适应。 但是,如果您仍然想知道问题中提到的设备大小,请查看screen size属性,并据此计算UI组件的大小。 您可以通过以下方式获取设备屏幕尺寸:

let screenSize = UIScreen.main.bounds
let screenWidth = screenSize.width
let screenHeight = screenSize.height

现在,根据屏幕的长度或宽度,您可以确定UI组件的大小。

干杯,拉胡尔

您要研究的概念称为“ 自动布局”

您应该在代码中使用AutoLayout。

例如:在xib / storybaords中,如果将左,右,上,下约束设置为零,则视图将始终坚持所有四个边缘。

参考链接: https : //developer.apple.com/library/content/documentation/UserExperience/Conceptual/AutolayoutPG/ViewswithIntrinsicContentSize.html

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM