SwiftUI中的选项卡中键实用程序功能

问题描述 投票:0回答:1

[我正在尝试复制像tabBar这样的“ Instagram”,它的中间有一个“实用程序”按钮,不一定属于tabBar生态系统。

enter image description here

我将如何在UIKit中做到这一点,只是使用

override func tabBar(tabBar: UITabBar, didSelectItem item: UITabBarItem) {
    print("Selected item")
}

[C0中的功能。但是显然我们无法在SwiftUI中做到这一点,因此一直在寻找人们是否尝试过任何想法。我最后的想法是将其简单地包装在UIView中,并与SwiftUI一起使用,但要避免这种情况并保持其本机性。

我在自定义TabBar中看到过写的内容,但想使用Apple提供的TabBar以避免将来出现任何差异。

谢谢!

swift uikit swiftui tabbar
1个回答
0
投票

您需要使用下面的代码创建UITabBarDelegate

TabView

import SwiftUI struct ContentView: View { var body: some View { TabView { HomeView() .tabItem { Image(systemName: "house") } Text("Search") .tabItem { Image(systemName: "magnifyingglass") } Text("Add") .tabItem { Image(systemName: "plus.circle") } Text("Heart") .tabItem { Image(systemName: "heart") } Text("Profile") .tabItem { Image(systemName: "person.crop.circle") } } } } struct ContentView_Previews: PreviewProvider { static var previews: some View { ContentView() } } struct HomeView: View { var body: some View { Text("Home") } }

如果要以编程方式选择TabView项,然后创建属性

Preview Output

并且您的@State private var selectedTab = 1属性将如下所示:

body
© www.soinside.com 2019 - 2024. All rights reserved.