我很新xocde 6 & autolayout.我正在为多个设备设计屏幕.我有一些意见,如图像,文本字段.我已经desgined他们为iPhone.我已经添加了一些固定高度&宽度constraints. So height & width remian fix for all devices.I want to change height & width of view acrding to screen size.I have tried one method which was
1.使宽度等于父视图并给予乘数0.5。
1.保持固定高度。
1.给予纵横比。
这种方式视图是对齐的,但它的高度是固定的。我也使用了前导空格,尾随空格,但这种方式有时会达到意想不到的结果。那么有没有更好的方法呢?我真的很难搞清楚。
2条答案
按热度按时间093gszye1#
2023年及以后
我强烈建议你使用**SwiftUI**,它超级容易使用,也超级快的结果。我甚至不能把它和其他选项比较。SwiftUI借助Swift的强大功能,帮助您在所有Apple平台上构建外观精美的应用程序-而且代码少得惊人。您只需使用一套工具和API,就可以在任何Apple设备上为每个人带来更好的体验。
SwiftUI使用声明式语法,因此您可以简单地声明您的用户界面应该做什么。例如,您可以写您想要一个由文本字段组成的项目列表,然后描述每个字段的对齐方式、字体和颜色。您的代码比以往任何时候都更简单、更易于阅读,从而节省了您的时间和维护。
这种声明式的风格甚至适用于像动画这样的复杂概念。只需几行代码即可轻松地将动画添加到几乎任何控件中,并选择一系列现成的效果。在运行时,系统处理创建平滑移动所需的所有步骤,甚至处理用户交互和动画中的状态更改。动画制作如此简单,您将寻找新的方法来使您的应用变得生动。
支持UIKit和AppKit
SwiftUI旨在与UIKit和AppKit一起工作,因此您可以在现有应用程序中逐步采用它。当需要构建用户界面的新部分或重建现有部分时,您可以使用SwiftUI,同时保留代码库的其余部分。如果你想使用SwiftUI中没有提供的界面元素,你可以将SwiftUI与UIKit和AppKit混合使用,以利用所有世界的最佳优势。
SwiftData
SwiftData使使用声明性代码持久化数据变得容易。您可以使用常规Swift代码查询和过滤数据。它的设计是为了与SwiftUI无缝集成。SwiftData使用Core Data的成熟存储架构,因此您可以在具有相同底层存储的同一应用中使用两者。当你准备好了,Xcode可以将你的Core Data模型转换成类,以便与SwiftData一起使用。
资源
我的旧答案
如果你是新手,我建议你使用PureLayout。您可以在项目中使用cocoapods或Carthage。有了这个库,你可以非常容易地为不同的屏幕设置这个约束。在github项目中有一个示例项目,您可以在其中找到许多不同的场景。以下是项目的github页面:
https://github.com/smileyborg/PureLayout
下面是一些代码片段的例子@deepak kumar:
我相信,如果你能从现在开始,它会更容易为您通过自动布局头痛。
de90aj5v2#
我不知道你想问什么,但这听起来像是一个 * 自动布局 * 问题,如果你不想让你的 * 文本视图 * 填满整个屏幕,请继续在你的Main.故事板中选择文本视图 ,然后点击Pin**按钮,就像这样:
请注意,所有约束都已启用,这意味着此文本视图将固定在iOS屏幕的边缘。
如果您想稍后编辑这些约束,请继续并转到 * 大小检查器 *,您可以直接单击约束: