SwiftUI TextField出现问题。光标和文本字段的大小最初很小,在输入时会增长到完整大小(在这种情况下为.largeTitle)。我将背景设为黑色,以便您可以看到实际字段发生了什么。有没有一种方法可以设置TextField的大小,使光标以与文本相同的大小开始?我很幸运地尝试了文档中的所有功能...这是使用Xcode 11 Beta 5的。谢谢!
TextField("", text: input)
.lineLimit(nil) // doesn't seem to work in Xcode 11 Beta 5
.font(.largeTitle)
.foregroundColor(.blue)
.background(Color.black)
答案 0 :(得分:2)
存在一个错误,即除非文本字段具有初始内容,否则设置文本字段的样式无效。希望Beta 6可以解决该问题。同时,这是一种对我有效的解决方法:
文本字段以一个值开头,但在.onAppear
闭包中立即重置,因此您实际上从未看到它:
struct ContentView: View {
@State private var input = "x"
var body: some View {
TextField("", text: $input)
.lineLimit(nil) // doesn't seem to work in Xcode 11 Beta 5
.font(.largeTitle)
.foregroundColor(.blue)
.background(Color.black)
.onAppear { self.input = "" }
}
}