导航栏标题在iPhone 7 plus设备上运行正常,但在iphoneXR中,导航栏标题部分隐藏。
以下是用于显示此屏幕的代码。 LoginView和ResetView在单独的文件中定义
var body: some View {
LoadingView(isShowing: .constant(self.isShowLoadingView)) {
VStack
{
if(self.showLoginView)
{
LoginView()
}
else if(self.showResetView)
{
ResetView()
}
else
{
NavigationView {
VStack(alignment: .leading)
{
Text(EMAIL).foregroundColor(Color.white)
TextField("", text: self.$emailid)
.foregroundColor(Color.black)
.padding(EdgeInsets(top: 0, leading: 0, bottom: 45, trailing: 0))
.textFieldStyle(RoundedBorderTextFieldStyle())
Text(PHONE_NUMBER).foregroundColor(Color.white)
TextField("", text: self.$phoneno)
.foregroundColor(Color.black)
.padding(EdgeInsets(top: 0, leading: 0, bottom: 45, trailing: 0))
.textFieldStyle(RoundedBorderTextFieldStyle())
Button(action: self.forgotPwdAction) {
HStack(alignment: .center) {
Spacer()
Text(OK_BTN).font(.headline).fontWeight(.bold).foregroundColor(Color.white).multilineTextAlignment(.center)
Spacer()
}
}.padding().background(Color.green)
Spacer()
}.padding(40)
.background(Color.black)
.navigationBarTitle("Forgot Password")
.navigationBarItems(leading: self.btnBack)
.navigationBarHidden(false)
}
}
}
.background(Color.black)
.edgesIgnoringSafeArea(.all)
.statusBar(hidden: true)
}
}
答案 0 :(得分:2)
不是因为您设置了.edgesIgnoringSafeArea(.all)
,所以内容正流入最安全的区域?我会尝试删除它。
答案 1 :(得分:0)
这是一个基于您的代码段的简化示例:
init
我在内部struct ContentView: View {
@State var haha = "placeholder"
var body: some View {
VStack
{
NavigationView {
VStack(alignment: .leading)
{
Text("EMAIL").foregroundColor(Color.white)
TextField("", text: self.$haha)
.foregroundColor(Color.black)
.padding(EdgeInsets(top: 0, leading: 0, bottom: 45, trailing: 0))
.textFieldStyle(RoundedBorderTextFieldStyle())
TextField("", text: self.$haha)
.foregroundColor(Color.black)
.padding(EdgeInsets(top: 0, leading: 0, bottom: 45, trailing: 0))
.textFieldStyle(RoundedBorderTextFieldStyle())
Spacer()
}
.padding(40)
.background(Color.black)
.navigationBarTitle("Forgot Password")
.navigationBarHidden(false)
.edgesIgnoringSafeArea([.leading, .trailing, .bottom])
}
}
.background(Color.gray)
.edgesIgnoringSafeArea(.all)
.statusBar(hidden: true)
}
}
中添加了.edgesIgnoringSafeArea([.leading, .trailing, .bottom])
修饰符。
在iPhone 11(也有缺口)上看起来像这样: