0
如果我實現方法shouldChangeCharactersInRange
,則範圍值和文本大小之間會有某種不一致。 當我只有一個常用字母的文本框(如「a」)並按退格鍵時,要替換的文本是一個空字符串,textField.text!.characters.count
返回1,而憤怒的位置爲0和長度爲1(這一切都有意義),但是如果文本字段只有一個表情符號(如「」),則range.length
返回2而不是1,然後在投射範圍從NSRange
到Range<String.Index>
時發生崩潰。爲什麼會發生?shouldChangeCharactersInRange給出與表情符號不同的範圍
的可能的複製[NSRange到範圍](http://stackoverflow.com/questions/ 25138339/nsrange-to-rangestring-index) - 字符串和NSString範圍不同,並且不能簡單地在它們之間「投射」。 –