ios SwiftUI如何在TabView中使用.fixedSize()修饰符来只占用它需要的空间?

brjng4g3  于 12个月前  发布在  iOS
关注(0)|答案(1)|浏览(109)

我有一个TabView,它被嵌入到ZStack中。我的目标是使ZStack及其子TabView只占用TabView内部布局视图所需的空间。如果我将TabView更改为VStack,则.fixedSize()修饰符可以实现这一点,但对于TabView,它会挤压TabView太小了。我如何才能在完成我的目标的同时仍然不模糊TabView的内容呢?


的数据

struct ContentView: View {
    var body: some View {
        ZStack {
            Color.red
            
            TabView {
                VStack {
                    Text("One")
                    Text("One")
                    Text("One")
                }
                VStack {
                    Text("Two")
                    Text("Two")
                    Text("Two")
                }
                VStack {
                    Text("Three")
                    Text("Three")
                    Text("Three")
                }
            }
            .tabViewStyle(.page)
            
        }
        
        .fixedSize() //why doesn't this work as expected?
        
    }
}

字符串

b5lpy0ml

b5lpy0ml1#

我有同样的问题,对我来说,这没有硬编码它的伎俩:

TabView(){
....
}
.aspectRatio(1, contentMode: .fit)
.frame(maxWidth: .infinity)

字符串

相关问题