为什么我不能使用 .cornerRadius() 在 VStack 中编辑 TextField?
Why cannot I edit TextField in VStack with a .cornerRadius()?
我在使用 Xcode 11 beta 4 遇到 SwiftUI 时遇到无法在 VStack
和 [=13= 中编辑 TextField
(最后一个除外)的问题].
删除 MARKED 行时,代码正常。
struct ParentView: View {
var body: some View {
VStack {
ForEach(0 ..< 3) { index in
ChildView()
}
}
.cornerRadius(10) // MARKED
}
}
struct ChildView: View {
@State var text: String = ""
var body: some View {
TextField("", text: $text)
.textFieldStyle(.roundedBorder)
}
}
无论如何,不会显示任何错误消息。
我不确定您是否可以将 .cornerRadius() 修饰符添加到 VStack 本身。为什么不将它添加到 ChildView 中的 textField:
struct ChildView: View {
@State var text: String = ""
var body: some View {
TextField("", text: $text)
.textFieldStyle(.roundedBorder)
.cornerRadius(10)
}
}
当子视图具有滚动视图或其他交互元素时,设置 cornerRadius
当前会导致错误行为(不响应触摸)。
我建议改用 .mask(RoundedRectangle(cornerRadius: 10.0))
。这是 更少 的越野车,但仍然不能始终 100% 工作。
此外,file feedback。
我在使用 Xcode 11 beta 4 遇到 SwiftUI 时遇到无法在 VStack
和 [=13= 中编辑 TextField
(最后一个除外)的问题].
删除 MARKED 行时,代码正常。
struct ParentView: View {
var body: some View {
VStack {
ForEach(0 ..< 3) { index in
ChildView()
}
}
.cornerRadius(10) // MARKED
}
}
struct ChildView: View {
@State var text: String = ""
var body: some View {
TextField("", text: $text)
.textFieldStyle(.roundedBorder)
}
}
无论如何,不会显示任何错误消息。
我不确定您是否可以将 .cornerRadius() 修饰符添加到 VStack 本身。为什么不将它添加到 ChildView 中的 textField:
struct ChildView: View {
@State var text: String = ""
var body: some View {
TextField("", text: $text)
.textFieldStyle(.roundedBorder)
.cornerRadius(10)
}
}
当子视图具有滚动视图或其他交互元素时,设置 cornerRadius
当前会导致错误行为(不响应触摸)。
我建议改用 .mask(RoundedRectangle(cornerRadius: 10.0))
。这是 更少 的越野车,但仍然不能始终 100% 工作。
此外,file feedback。