swift 根据RoundedRectangle上的文本大小填充文本覆盖

ih99xse1  于 2022-11-21  发布在  Swift
关注(0)|答案(1)|浏览(134)

是否有一种本地方式来填充形状并使宽度基于文本覆盖的大小?
下面是我的代码:

RoundedRectangle(cornerRadius: 25, style: .continuous)
    .stroke(Color.black, lineWidth: 1)
    .frame(width: 100, height: 20, alignment: Alignment.top)
    .overlay(
        Text(item.category)
            .font(.caption.weight(.semibold))
            .foregroundColor(.accentColor)
    )

这将创建以下圆角矩形:

有没有人知道如何使圆角矩形的大小的文本在里面?所以基本上,而不是传递一个宽度,我希望RoundedRectangle扩大的基础上,文本的宽度自动,但也留下一些填补。

a6b3iqyw

a6b3iqyw1#

你可以试试这个

Text(item.category)
    .font(.caption.weight(.semibold))
    .foregroundColor(.accentColor)
    .padding(10) // your preference
    .overlay(
        RoundedRectangle(cornerRadius: 25, style: .continuous)
            .stroke(.black, lineWidth: 1)
    )

相关问题