【发布时间】:2019-06-07 05:11:30
【问题描述】:
在TabbedView 的documentation 中,它说您可以使用LayoutView 添加文本和图像视图。我无法在任何地方找到对 LayoutView 的任何引用。
这行得通:
.tabItemLabel(Image("image"))
这很有效:
.tabItemLabel(Text("image"))
如何像 UITabBarItem 一样显示两者?
【问题讨论】:
在TabbedView 的documentation 中,它说您可以使用LayoutView 添加文本和图像视图。我无法在任何地方找到对 LayoutView 的任何引用。
这行得通:
.tabItemLabel(Image("image"))
这很有效:
.tabItemLabel(Text("image"))
如何像 UITabBarItem 一样显示两者?
【问题讨论】:
在 Xcode Beta 3 中,此问题已得到修复。这是一个例子。
.tabItem {
Image(systemName: "circle")
Text("Hello")
}
【讨论】:
使用以下代码在TabbedView中设置图片和文字,
查看此帖子了解更多信息https://forums.developer.apple.com/thread/117472
TabbedView {
tabOne()
.tabItemLabel {
Image(systemName: "image1")
Text("Tab 1")
}
tabTwo()
.tabItemLabel {
Image(systemName: "image2")
Text("Tab 2")
}
}
【讨论】:
tabOne() 和tabTwo() 替换为真实视图,我也无法编译。你能举一个有效的具体例子吗?
iOS & iPadOS 13 Beta 2 Release Notes 中有一个解决方法:
解决方法:将传递给修饰符的视图包装在 VStack 中:
MyView()
.tabItemLabel(VStack {
Image("resourceName")
Text("Item")
})
请注意,它适用于我使用本地图像但不适用于 SF 符号(例如 Image(systemName: "clock.fill") 将不起作用)。
Xcode 11 beta 3 已修复此问题。 tabItemLabel 重命名为 tabItem,可以像下面这样使用:
.tabItem {
Image(systemName: "plus")
Text("Tab1")
}
【讨论】: