gpt4 book ai didi

ios - 为什么 SwiftUI 选择器在导航后会重新定位表单?

转载 作者:行者123 更新时间:2023-12-02 02:30:28 25 4
gpt4 key购买 nike

单击选择器后,它将导航到选择 View 。项目列表的渲染距离顶部太远,但在动画完成后会快速对齐。为什么会发生这种情况?

演示:https://gfycat.com/idioticdizzyazurevase

我已经创建了一个最小的示例来排除导航栏标题和按钮、表单部分和其他细节:

import SwiftUI

struct NewProjectView: View {

@State var name = ""

var body: some View {
NavigationView {
Form {
Picker("Client", selection: $name) {
Text("Client 1")
Text("Client 2")
}
}
}
}
}

struct NewProjectView_Previews: PreviewProvider {
static var previews: some View {
NewProjectView()
}
}

这种情况发生在预览模式、模拟器和设备上(Xcode 11.2、模拟器中的 iOS 13.2、设备上的 13.3 beta 1)。

最佳答案

强制导航 View 样式堆叠时,可以解决明显错误的行为:

NavigationView {

}.navigationViewStyle(StackNavigationViewStyle())

这是我的问题的解决方案,但我不会将其标记为已接受的答案(尚未)。

  1. 这似乎是一个错误,即使它可能是由特殊情况触发的。
  2. 如果您需要其他导航 View 样式,我的解决方案将不起作用。
  3. 此外,它不会修复 DogCoffee 在评论中提到的水平重新定位问题。

关于ios - 为什么 SwiftUI 选择器在导航后会重新定位表单?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58773687/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com