我有一個UITextView
,它允許通過點擊文本來選擇文字。如果輕擊,則通過更改NSForegroundColor
屬性以突出顯示該單詞的顏色。 再次點擊可以通過將顏色更改回文本顏色來取消選擇它。獲取屬性字符串的顏色變化詞
現在我需要知道UITextView
中所有選定的單詞。
第一個想法是刪除所有特殊字符並在空間處分割文本。然後檢查顏色屬性是否等於每個單獨詞的選定/高亮顏色。 但歸因字符串不允許在字符處拆分或刪除組件。 NSAttributedString
也沒有。
第二個想法是將突出顯示部分的範圍保存在一個數組中,並遍歷它以獲取突出顯示的部分。但是這對我來說似乎有些複雜,尤其是當我需要正確的單詞出現順序時,它不能保證數組,在每個分支上添加/刪除 (例如,讓我們說文本是:「這是測試」
Tap this -> index 0
Tap test -> index 1
Tap this -> test becomes index 0
Tap this -> this becomes index 1
那麼該命令是不好了。
我已經想通了如何獲得一個屬性串的顏色,這是沒有問題的。
我如何可以遍歷歸屬字符串並找出顏色已改變的詞或解決此問題的最佳方法?
謝謝!
問候
謝謝,作品像魅力! –