【发布时间】:2022-08-12 02:02:07
【问题描述】:
ios开发者大一。我选择了swift/swiftUI而不是Objective-c/UIKit来启动这个。
想在swiftUI中更改TabView的背景,首先我尝试使用background修饰符但没用,然后我在开发人员文档中找不到解决此问题的内容。
最后我找到了一个解决方案here,如下所示(使用 UITabBar),它可以工作。
所以我对此感到很困惑:
- SwiftUI 没有提供改变 TabView 背景颜色的方法?我们应该使用 UIKit/UITabBar 来做到这一点吗? SwiftUI 只是 UIKit 的一个包装器?
- 如果问题1的答案是YES,为什么swiftUI没有提供?这是因为swiftUI的不完善还是只是Apple不想让swiftUI开发者改变TabBar的背景颜色?特别是我们的场景真的想做点什么,但swiftUI买不起,我应该额外使用UIKit吗?
- 我不是 iOS 开发者,只是对做这个感兴趣。我应该先学习 UIKit,还是先学习 Objective-c?从 swift/swiftUI 开始是错误的吗?
import SwiftUI struct HomeView: View { // Use UITabBar to do this. init() { UITabBar.appearance().backgroundColor = UIColor(.orange) } var body: some View { TabView { ClockScreen() .tabItem { Image(systemName: \"heart.fill\") Text(\"Favourites\") } ScheduleScreen() .tabItem { Image(systemName: \"mappin.circle.fill\") Text(\"Friends\") } ProfileScreen() .tabItem { Image(systemName: \"person.fill\") Text(\"Nearby\") } } } }
-
这回答了你的问题了吗? Change Tabbed View Bar Color SwiftUI
-
@AbhinavMathur 对不起兄弟,这不是我想要的。使用 UITabBar 显然可以工作,但我想知道有没有办法在没有 UIKit 的情况下直接使用 swiftUI。而且我在列表中留下了更多问题。