Featured image of post 我服了爸爸:NavigationBar和ToolBar修饰符到底该放在哪里啊???

我服了爸爸:NavigationBar和ToolBar修饰符到底该放在哪里啊???

这篇文章没有开头。我折腾了两个小时已经筋疲力竭。SwiftUI傻逼。 事件背景@ObservedRealmObject的大坑! 这是放在外面的效果:

NavigationView {
	ContentView()
}
	.navigationTitle("All Groups")
    .navigationBarTitleDisplayMode(.large)

这是放在里面的效果:

NavigationView {
    ContentView()
        .navigationTitle("All Groups")
        .navigationBarTitleDisplayMode(.large)
}

搞得我以为所有的关于Toolbar和Navigation的都应该放到里面

后来我遇到了@ObservedRealmObject的大坑!我一直以为是Realm的问题,网上看到了一堆教程,很多都在说.navigationViewStyle(.stack)有用,我试了半天没用。 这是放在里面的效果:

NavigationView {
    ContentView() // with NavigationLink inside
        .navigationViewStyle(.stack)
}

这是放在外面的效果:

NavigationView {
    ContentView() // with NavigationLink inside
}
.navigationViewStyle(.stack)

我服了爸爸:咱就是说为什么明明都是同类别的Modifier非要放在不同的地方才能生效呢? 我早就深知id对SwiftUI的重要性,因此干点啥都一定很谨慎地把id加上,然而当我改了半天stack都没用的时候,我开始怀疑自己了: 难道是我id写的还不够严谨?难道一定要用他们的_id? 于是折腾了半天改成_id,又是改成@ObservedResults,改来改去愣是没用 我一直以为是我id的写法不够标准,但改了半天就是没用 实在受不了了尝试了一下把iOS最低版本升到16.0,用了一回NavigationStack,可算是管用了。 然后我就寻思,.navigationViewStyle(.stack)不管用,NavigationStack管用?凭啥?我以后只能开发16.0以上的吗? 于是折腾折腾折腾 最后突发奇想把.navigationViewStyle(.stack)放到外面才终于整好了…

发明这个的人脑子是怎么想的啊?

《里外》

苹果雨燕大视图, // SwiftUI 你不谋财只害命。 一会里来一会外, 里里外外不是人。

仅允许跳转至本网站的链接引用。未经授权不得转载、复制或用于任何形式的商业或非商业用途。
使用 Hugo 构建
主题 StackJimmy 设计