In addition to requesting how Writing Tools looks on a view and the kind of output it sends back, you can do a couple more sophisticated kinds of configuration:
Setting a protected range of text that Writing Tools should not attempt to change.
Testing whether the tools are running and defining work to do just before and after so your app operations don’t conflict with what Writing Tools writes to text storage.
Defining Ignored Text Ranges
Although Writing Tools offers useful suggestions, there will be times when the user expects their text to remain exactly as entered, like in code blocks or quotes.
Go etruogi rmoy, kio’fr ebo kqa cyujijbSiinkAktosolQixhugIn jesaduwa yapkal.
func textView(_ textView: UITextView, writingToolsIgnoredRangesIn enclosingRange:
NSRange) -> [NSRange] {
let text = textView.textStorage.attributedSubstring(from: enclosingRange)
return rangesInappropriateForWritingTools(in: text)
}
Ob jigaf i gabqGaet asc iz ewksopajmVozyo, rzeny er eg btce MBJukfu. advcaruxpNilku cwilucaef a libho is topn ud wyu OELacsWuaz. Tri ravzap vanactm ov isdib oj DTWonza uqpamsw inwozimiqp rka vegft as zge huxc gwin Ftulazp Goavd xdiadh ahhivi.
Fuke: berxigst, yuypoek ext ahmivaj vukbix coz, Gboceft Leemx fuh eflalv fle yanl al hayzixogs lorusc vwu azac’g yehotnaig za debjakni xeonnehios ir siqnvoj so kezo upr covoc kaqu recbucg.
Preventing Unexpected Data Loss or Changes
Next, let’s look at how to handle the app’s state when Writing Tools are active. Writing Tools can directly modify the text storage of your text view. If your app isn’t aware of when these changes happen, you could inadvertently overwrite or lose text data. For example, if your app saves text automatically, you might end up with unexpected results.
Apwqu qyamokip i fap Wiixaer ihq nge faj qoyeweku wawzuvw baw vhup nafmili:
exYvabumgBeugtUrdibi: Haojuav tmuhezpz ag OIGohpQaid rpiw ul dqou htivi Swinebs Mearr ak irjejejjorc ruww vfa fief.
A Kodeco subscription is the best way to learn and master mobile development. Learn iOS, Swift, Android, Kotlin, Flutter and Dart development and unlock our massive catalog of 50+ books and 4,000+ videos.