xcode 如何避免maxWidth成为swiftui中的默认值?

anauzrmj  于 2023-06-24  发布在  Swift
关注(0)|答案(1)|浏览(135)

我有下面的代码,我想maxWidth不影响文本的大小时,其内容的宽度小于150。如图所示,当我将maxWidth设置为150时,Text视图以该值开始,但我只希望它是最大值,而不是初始值。

var body: some View {
        VStack {
            HStack(alignment: .firstTextBaseline) {
                Text("text")
                    .frame(minWidth: 0, maxWidth: 150, alignment: .leading)
                    .background(.blue)
                Text("000000")
                Spacer()
                Text("text")
            }
        }
    }

preview
我这样做是因为我希望小文本的数字附加到第一个文本视图,但当文本很大时,我希望如图所示的换行符。
preview
我已经尝试修改帧的最大宽度,和最小宽度设置为0,但这也不起作用。

hs1rzwqc

hs1rzwqc1#

您可以在frame修改器的外部 * 添加fixedSize *:

.frame(maxWidth: 150, alignment: .leading)
.fixedSize()

相关问题