swift中填充修饰符的默认值是多少?

问题描述

只是一个简单的问题。我找不到 Swift 的 .padding() 修饰符的认值

ModelSelectorItem(variant: variant)
    .padding()

我知道我可以省略该值,而 swift 会自行提供认值。

问:SwiftUI 中 .padding() 修饰符的认值是多少?

解决方法

据我从 Apple 的文档中了解到,没有标准值,它是根据 Apple 的某些标准计算得出的。因此,对于不同的设备、用户的辅助功能设置、如果用户在 iPad 上以并排模式使用应用程序等,它可能会有所不同......

Here 是文档:

沿其填充此视图的一组边; 如果为零,则将指定的或系统计算的数量应用到所有边。

,

如文档中所述,padding() 没有标准值,并且在不同平台上可能有所不同。

我建议您使用以下代码创建自己的修饰符:

struct MyDefaultPaddingModifier: ViewModifier {    
    func body(content: Content) -> some View {
        return content
            .padding(.all,5) // you can store this as a variable based on your needs
    }
}

然后你有优雅的用法:

ModelSelectorItem(variant: variant)
    .modifier(MyDefaultPaddingModifier())