在TabbedView
的{{3}}中,您可以使用LayoutView来添加文本视图和图像视图。我在任何地方都找不到对LayoutView的引用。
这有效:
.tabItemLabel(Image("image"))
这可行:
.tabItemLabel(Text("image"))
如何像UITabBarItem一样显示两者?
答案 0 :(得分:2)
使用以下代码在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")
}
}
答案 1 :(得分:2)
在Xcode Beta 3中,此问题已修复。这是一个例子。
.tabItem {
Image(systemName: "circle")
Text("Hello")
}
答案 2 :(得分:1)
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")
}