怎么在SwiftUI中相对于视图的左上角定位视图

本教程将介绍如何在SwiftUI中相对于视图的左上角定位视图的处理方法,这篇教程是从别的地方看到的,然后加了一些国外程序员的疑问与解答,希望能对你有所帮助,好了,下面开始学习吧。

怎么在SwiftUI中相对于视图的左上角定位视图 教程 第1张

问题描述

怎么在swftUI中相对于视图的左上角定位视图?"Position"修改器相对于视图的中心坐标移动视图。因此.position(x: 0, y: 0)将视图中心坐标放置在屏幕左上角。

我要将视图左上角坐标放置在屏幕的左上角,怎么执行此操作?

struct HomeView: View {
 var body: some View {
  VStack(alignment: .leading) {
Text("Top Text")
 .font(.system(size: 20))
 .fontWeight(.medium)
 Text("Bottom Text")
 .font(.system(size: 12))
 .fontWeight(.regular)
  }
  .position(x: 0, y: 0)
 }
}

目前,我的左半部分视图已被切断屏幕,怎么防止出现这种情况?另外,怎么相对于安全区域对齐?

我想念UIKit?

推荐答案

@Asperi的答案可以解决问题。但是,我认为我们应该使用Spacer()而不是Color.clearZStack

Spacer是专门针对这些场景设计的,使代码更易于理解。

struct HomeView: View {
 var body: some View {
  HStack {
VStack(alignment: .leading) {
 Text("Top Text")
  .font(.system(size: 20))
  .fontWeight(.medium)

 Text("Bottom Text")
  .font(.system(size: 12))
  .fontWeight(.regular)
 Spacer()
}
Spacer()
  }
 }
}

SwiftUI布局系统与UIKit不同。

它要求每个子视图根据其父视图的边界计算自己的大小。接下来,要求每个父级将其子级放置在自己的边界内。

好了关于怎么在SwiftUI中相对于视图的左上角定位视图的教程就到这里就结束了,希望趣模板源码网找到的这篇技术文章能帮助到大家,更多技术教程可以在站内搜索。