我有一个简单的观点是这样的:
struct TestView: View {
var body: some View {
Button(action: {}) {
Text("Button")
.padding()
.foregroundColor(.white)
}
.background(Color(.gray))
// .cornerRadius(10)
.overlay(
RoundedRectangle(cornerRadius: 10)
.stroke(.red, lineWidth:4)
)
}
}
Run Code Online (Sandbox Code Playgroud)
它画出这样的:
我试图理解为什么边界会从视图中溢出(灰色区域)。我想绘制边框,使其保留在视图内(在灰色区域中)。看起来宽度的一半在外面,一半在里面。
如何使边框保持在覆盖范围内?
\n\n如何使边框保持在覆盖范围内?
\n
使用strokeBorder(_:lineWidth:antialiased:)\xe2\x80\x94 代替,这会绘制一个内部笔画。
Button(action: {}) {\n Text("Button")\n .padding()\n .foregroundColor(.white)\n}\n.background(Color(.gray))\n.overlay(\n RoundedRectangle(cornerRadius: 10)\n .strokeBorder(.red, lineWidth: 4) /// here!\n)\nRun Code Online (Sandbox Code Playgroud)\n
| 归档时间: |
|
| 查看次数: |
1983 次 |
| 最近记录: |