如果是我会写的文字
Text("Hello ")+Text("world").foregroundColor(.yellow)
在TextField
/ TextEditor
中我可以做什么?
答案 0 :(得分:0)
我找到了一个可怕的 SwiftUI解决方案:
@State private var text = "Hello world"
var body: some View {
VStack {
ZStack(alignment: .topLeading) {
TextEditor(text: $text)
.foregroundColor(.clear)
text
.split(separator: " ")
.map {
if $0 == "world" {
return Text($0 + " ").foregroundColor(.red)
} else {
return Text($0 + " ")
}
}
.reduce(Text(""), +)
.padding(.vertical, 8.5)
.padding(.horizontal, 5)
}
}.padding()
}
此方法存在的问题: