Nadchádzajúce Podporu
- Podpora bola pridaná v Xcode 13.2 beta 3, ktorý nie je zatiaľ k dispozícii.
Dočasné Fix
Ok, tak na základe mojich pokusov, .submitLabel(...)
nefunguje s textový editor. Je tu možné riešenie, v ktorom pridáte Text(...)
ako subview na TextEditor(...)
ale to je veľmi jenk a ja by som to odporúčajú. Je tu však riešenie, našiel som pre iOS 13, že sa zdá, že funkcia presne rovnakým spôsobom, že textový editor sa zobrazí na prácu, a to pomocou UIViewRepresentable
. Našťastie je to veľmi jednoduché implementovať. Vytvorenie tejto struct.
struct TextView: UIViewRepresentable {
typealias UIViewType = UITextView
var configuration = { (view: UIViewType) in }
func makeUIView(context: UIViewRepresentableContext<Self>) -> UIViewType {
UIViewType()
}
func updateUIView(_ uiView: UIViewType, context: UIViewRepresentableContext<Self>) {
configuration(uiView)
}
}
Potom použite tento názor, ako by ste použiť TextView()
ak priradíte jeho vlastnosti. Toto je efektívne ťahanie cez UIKit
verzia textView, tak jeho vlastnosti sú rovnaké. Môžete dostať chuť s ním v tomto bode a mix SwiftUI a UIKit vlastnosti a modifikátorov.
TextView { view in
view.text = sampleText
view.returnKeyType = .done
}