【发布时间】:2019-07-10 10:47:10
【问题描述】:
按照教程,我有以下代码来显示一个带有 3 个选项卡项的选项卡视图,所有选项卡项上都有一个图标,按下它们时,它们会在三个不同的视图之间导航。这一切都很好,但是,我希望能够处理选择,并且仅在满足某些条件时才显示视图 2 或 3。
有没有办法获取选定的值并检查它,然后检查我自己的条件,然后显示视图是否满足条件,或者如果不是说他们目前无法使用该视图,则显示警报。
本质上,我希望能够在切换视图之前拦截选择值,也许我需要重写所有这些,但这是我正在寻找的功能,因为这就是我之前使用的应用程序的工作方式旧框架。
@State private var selection = 1
var body: some View
{
TabbedView(selection: $selection)
{
View1().tabItemLabel(
VStack
{
Image("icon")
Text("")
})
.tag(1)
View2().tabItemLabel(
VStack
{
Image("icon")
Text("")
}).tag(2)
View3().tabItemLabel(
VStack
{
Image("icon")
Text("")
}).tag(3)
}
}
【问题讨论】: