如何在swiftUI中相对于视图的左上角放置视图? “位置”修饰符使视图相对于其中心坐标移动。因此.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😪
如果我正确理解了您的目标,则.position
不适合实现该目标。 SwiftUI布局无需硬编码即可更好地工作。
这里是可能的解决方案。经过Xcode 11.4 / iOS 13.4的测试]
struct HomeView: View {
var body: some View {
ZStack(alignment: .topLeading) {
Color.clear
VStack(alignment: .leading) {
Text("Top Text")
.font(.system(size: 20))
.fontWeight(.medium)
Text("Bottom Text")
.font(.system(size: 12))
.fontWeight(.regular)
}
}.frame(maxWidth: .infinity, maxHeight: .infinity)
}
}