问题标签 [swiftui-tabview]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
swiftui - 即使 childView 当前未显示,为什么 TabView 在 childView 上调用 onAppear?
出于某种原因,onAppear 被调用了两次。我创建了一个测试项目并尝试添加另一个解决方案中编写的 ZStack,但它对我不起作用。在这种情况下可以做什么?
如果您切换一次到两次:
swiftui - 刷新 SwiftUI 父视图是否会导致子视图刷新?
我有TabView
2 个选项卡,TabA 和 TabB。两者都NavigationView
围绕着一个主视图,每个主视图都有几个NavigationLink
子视图。我想支持以下 2 个功能:
能够导航到 TabA 的任何子项,单击选项卡 B,然后单击返回 TabA,然后查看子视图与我交换选项卡之前完全相同。据我了解,这是为 iOS14 构建时 SwiftUI 的现有功能。
能够导航到 TabA 的任何子项,单击 Tab B,单击返回 TabA,再次单击 TabA,然后转到 TabA 的根视图。我看到这个功能在 Facebook、Twitter 等其他应用程序中实现。
我的计划是在 TabA 的根视图中添加一个,并通过在用户两次单击同一选项卡时重置它来id
使其无效,从而刷新根视图并导致我返回到根视图。我从以下帖子(https://designcode.io/swiftui-handbook-tabbar-to-root-view)中得到了这个想法。但是,我注意到这会导致功能 #1 中断,因为当我离开 TabA 并返回时,子视图也已刷新。id
NavigationView
这是由于父视图刷新,并导致该子视图也刷新吗?我没有将任何@Binding
's 从父级传递给子级,也没有任何参数传递给子视图的构造函数。
是否有另一种纯 SwiftUI 方法来支持功能 #2?我刚刚开始学习 SwiftUI,不确定如何强制我的 TabView 导航到根视图。
提前感谢您的帮助!
swiftui - 在 swiftui 中禁用或忽略 TabView 上的点击
我有一个非常普通的应用程序,带有TabView
. 但是,当某个内容视图中发生特定过程时,我想阻止用户切换选项卡,直到该过程完成。
如果我disabled
在其自身上使用该属性TabView
(使用@State
绑定来驱动它),那么整个内容视图似乎被禁用 - 水龙头似乎没有通过主视图上的按钮。
例子:
显然,我希望View1
仍然允许用户,你知道,做事。当someStateVal
为真时,整体View1
没有反应。
有没有办法防止基于更改标签someStateVal
?
谢谢!
swift - SwiftUI TabView 在添加/删除 CoreData 的元素期间给出错误消息
我目前正在尝试将 TabView 用于带有 CoreData 的轮播视图(PageTabViewStyle)。
当我按如下顺序添加新页面时,不会发生错误 age.name: 3, page.name: 4, page.name: 5
但是会发生错误,如果我在第一/中间顺序中输入一个数字,例如 page.name: 2
如果我输入 page.name: 6,则没有错误,它也与 Alphabet 相同。bcde -> 放“f”,没问题,但是放“a”错误。
关闭应用程序并打开应用程序后,无论如何我都会看到更新的(添加页面/删除页面)ContentView。
我猜,TabView有排序问题,所以我尝试对CoreData的列表进行排序,将LifeCycle改为SwiftUI,但错误一再出现。我也尝试过使用 Firebase,但同样的问题。
错误信息:
内容视图
添加页面
子页面
使用 VStack 或 HStack 或 List 而不是 TabView 可以正常工作,没有任何问题。
swiftui - 在 SwiftUI 中的 tabview 中嵌入 webview
我一直在尝试创建一个 TabView,PageIndexViewStyle
其中每个页面都是一个包含图像和 WebView 的 ScrollView。当我在 TabView 之外创建页面时,@ Asperi的示例代码效果很好,但是当我在 TabView 内移动内容时,第二页上的 WebView 不会显示。
swiftui - 隐藏选项卡视图及其在某些视图上占用的空间
我试图在我的应用程序的某些页面上隐藏标签栏。根据此解决方案,我正在使用带有 Introspect 的 SwiftUI 。它可以完美地隐藏标签栏,但隐藏的标签栏仍然占用页面空间。
我想删除隐藏标签栏占用的空间 - 有没有办法做到这一点?
我尝试了一些 hacky 方法,例如设置偏移量或负填充,或者使用 edgesIgnoringSafeArea 然后重新添加填充,但这些似乎并不理想。
我也尝试使用“hidesBottomBarWhenPushed”,因为这是我希望达到的整体效果,但我没有找到一种方法来成功地使用 Introspect。
macos - SWIFTUI 2,SWIFTUI 3 - MACOS:为什么每次我切换到另一个选项卡时总是触发 TextField 的 onCommit 关闭
- 我的代码:我使用
onCommit
闭包能够在焦点集中时通过按Enter 键TextField
来执行操作。
- 我的问题:当
onCommit
我切换到另一个选项卡时,也总是触发关闭,使我的应用程序执行意外操作。 - 我的问题:
- 这是错误还是功能?
onCommit
每次我切换到另一个选项卡时,有没有办法避免触发?