SwiftUI:自定义 TabView 的 PageTabViewStyle 以显示标签而不是点

SwiftUI: customizing TabView's PageTabViewStyle to show tags instead of dots

我使用以下代码通过 TabView:

水平显示页面列表
import SwiftUI

struct ContentView: View {
    var body: some View {
        ScrollView {
            LazyHStack {
                PageView()
            }
        }
    }
}

struct PageView: View {
    var body: some View {
        TabView {
            ForEach(0..<30) { i in
                ZStack {
                    Color.black
                    Text("Row: \(i)").foregroundColor(.white)
                }
            }
            .padding(.all, 10)
        }
        .frame(width: UIScreen.main.bounds.width, height: 200)
        .tabViewStyle(PageTabViewStyle())
    }
}

然而,这在底部显示了点:

我要实现的是:

  1. 隐藏点。

  2. PageView 之上添加 Text 视图(或标签)以显示属于特定类别的行,就像在 YouTube 应用程序中所做的一样:

PageTabViewStyle 这可能吗?

只需使用样式 PageIndexViewStyle.never 并在选择标签时以编程方式更改选项卡,如