我正在尝试将“顶部文本”与屏幕顶部对齐,但找不到方法。“顶部文本”需要在 iphone 屏幕的“缺口”附近对齐。
我附上了“顶部文本”当前所在位置的屏幕截图,需要移至顶部
struct ContentView: View {
//var newColor : [String: Double] = setColor(red:247, green:186, blue:161)
var body: some View {
ZStack {
VStack(spacing: 0) {
HStack {
Text("Top Text[![enter image description here][1]][1]")
.fontWeight(.light)
.multilineTextAlignment(.center)
.frame(minWidth: 0, maxWidth: .infinity, minHeight: 100)
.font(.body)
.padding()
}
.offset(y: 0)
.frame(minWidth: 0, maxHeight: 400, alignment: .topLeading)
VStack {
Text("Sign in with Facebook")
.fontWeight(.light)
.font(.title)
.frame(minWidth: 0, maxWidth: .infinity, maxHeight: 50)
.padding(EdgeInsets.init(top: 0, leading: 0, bottom: 0, trailing: 0))
Text("Sign in with Google")
.fontWeight(.light)
.font(.title)
.padding()
.frame(minWidth: 0, maxWidth: .infinity, maxHeight: 50)
}
}
.foregroundColor(Color.black.opacity(0.7))
.padding()
.frame(minWidth: 0, maxWidth: .infinity, minHeight: 0, maxHeight: .infinity, alignment: .leading)
.offset(x: 0, y: 0)
}
.frame(minWidth: 0, maxWidth: .infinity, minHeight: 0, maxHeight: .infinity, alignment: .leading)
.background(Color.orange.opacity(0.2))
.edgesIgnoringSafeArea(.all)
}
}
Run Code Online (Sandbox Code Playgroud)
Joe*_*Joe 18
您可以Spacer()在您的HStack和之间放置一个VStack。不过,这会将其他文本推到底部。您可以Spacer()在底部Texts之后放置另一个以将它们向上推。
下面是代码更少的基本相同的视图:
var body: some View {
ZStack {
Color(.orange).opacity(0.2).edgesIgnoringSafeArea(.all)
VStack(spacing: 10) {
Text("Top Text[![enter image description here][1]][1]")
.fontWeight(.light)
.multilineTextAlignment(.center)
.font(.body)
.padding()
Spacer()
Text("Sign in with Facebook")
.fontWeight(.light)
.font(.title)
Text("Sign in with Google")
.fontWeight(.light)
.font(.title)
Spacer()
}
.foregroundColor(Color.black.opacity(0.7))
.padding()
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
15221 次 |
| 最近记录: |