SwiftUI TextEditor(文本编辑器)背景颜色
设置TextEditor
的background
会发现并不能改变其背景色,因为颜色在TextEditor
内部的TextView
上,因此可以使用extension
把所有的TextView
的background
设置为.clear
把背景色清除。
然后再使用.background
就可以成功设置TextEditor
的背景色。
import SwiftUI
extension NSTextView {
open override var frame: CGRect {
didSet {
backgroundColor = .clear // 清除TextView背景颜色
drawsBackground = true
}
}
}
struct ContentView: View {
@State var string: String = "这是一个文本编辑器"
var body: some View {
TextEditor(text: $string)
.textFieldStyle(PlainTextFieldStyle())
.background(Color.blue) // 设置背景颜色
}
}
文章深入浅出,既有深度思考,又不乏广度覆盖,令人叹为观止。
结论部分可提出实际应用建议,提升价值。
作者的才华横溢,让这篇文章成为了一篇不可多得的艺术品。
博主真是太厉害了!!!
感谢分享