【问题标题】:Remove padding bewteen items in HStack删除 HStack 中项目之间的填充
【发布时间】:2020-09-23 23:51:26
【问题描述】:

我正在尝试定义一个子视图,它是三个按钮,每个按钮都在一个圆角矩形内。 第一个按钮是固定宽度,其他两个按钮应该共享剩余的宽度。 这就是我得到的:

您可以看到按钮之间有一些填充,虽然两个较大的按钮大小正确,但填充使整个东西太宽了。

这是我的 SwiftUI 代码:

struct TopBarView: View {
var body: some View {
    GeometryReader { geometry in
        HStack {
            ZStack {
                RoundedRectangle(cornerRadius: 8, style: .continuous )
                    .stroke()
                    
                Button(action: sideMenu) {
                    Image(systemName: "line.horizontal.3")
                }
            }.frame(width: 48, height: 48, alignment: .center)
            
            ZStack {
                RoundedRectangle(cornerRadius: 8, style: .continuous)
                    .stroke()
                
                Button(action: sideMenu) {
                    Text( "First")
                }
            }.frame(width: (geometry.size.width - 48)/2, height: 48)
            
            ZStack {
                RoundedRectangle(cornerRadius: 8, style: .continuous)
                    .stroke()
    
                Button(action: sideMenu) {
                    Text( "Second")
                }
            }.frame(width: (geometry.size.width - 48)/2, height: 48)
        }
    }
}

func sideMenu() -> Void {
    
}

}

所以我的问题是 - 消除按钮之间的间隙以使一切都适合的正确方法是什么?

【问题讨论】:

    标签: xcode swiftui


    【解决方案1】:

    您可以将spacing 参数传递给HStack 以删除间距,如下所示:

    HStack(spacing: 0) { 
        //some content
    }
    

    【讨论】:

    • 谢谢 - 赢得了有史以来最快的回答奖!
    • @Kenny 哈哈,不客气!如果对您有帮助,请随时接受答案或点赞。
    猜你喜欢
    • 2021-04-24
    • 1970-01-01
    • 2015-07-11
    • 2020-10-02
    • 2016-12-23
    • 1970-01-01
    • 2018-01-05
    • 1970-01-01
    • 2018-02-05
    相关资源
    最近更新 更多