swift - 为什么我不能使用 .cornerRadius() 在 VStack 中编辑 TextField?

标签 swift swiftui

当遇到无法在 VStack 中使用 编辑 TextField(最后一个除外)的问题时,我正在使用 Xcode 11 beta 4 体验 SwiftUI。 cornerRadius().

删除 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)
    }
}

无论如何,不​​会显示任何错误消息。

最佳答案

当 subview 具有 ScrollView 或其他交互元素时,当前设置 cornerRadius 会导致错误行为(不响应触摸)。

我建议改用 .mask(RoundedRectangle(cornerRadius: 10.0))。这不是错误,但仍然不能 100% 正常工作。

此外,file feedback .

关于swift - 为什么我不能使用 .cornerRadius() 在 VStack 中编辑 TextField?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57151841/

相关文章:

swift - SwiftUI 中的 FetchRequest 包装值 : EXC_BAD_INSTRUCTION

ios - SwiftUI 检测用户何时截取屏幕截图或屏幕录制

ios - 将导航栏标题文本更改为自定义颜色?

ios - 在 SwiftUI 中更改 slider 拇指

ios - 如何快速访问 XCTest 的外部文件

ios - SplitViewController DetailView 没有延伸到 TabBarController 后面

ios - 无法从 Parse iOS Swift 查询用户名

ios - 如何以编程方式获取最大纹理大小(宽度和高度)

ios - 如何在 SwiftUI 中显示警报 View 或自定义覆盖

swift - 如何在 UIActivity ViewController 中共享 .zip 文件?