我使用Canvas.drawText()
自定義了View
來繪製SpannableString
s。Android Canvas採用SpannableString繪製文本
當文本包含我製作的表情符號(我不喜歡默認樣式的表情符號)時,我打電話給SpannableString.setSpan()
。 我發現Canvas.drawText()
沒有畫出我設定的範圍,而是繪製了默認樣式的表情符號。 我試圖呼叫TextView.setText()
通過相同的SpannableString
,它的工作原理。 我想使用Canvas
來繪製文字的性能(否則,新的幾個TextView
s滾動ListView
導致性能嚴重問題)。如何通過Canvas
繪製SpannableString
?
對不起,我不是母語的人。感謝您的提前!
編輯:其實我做了這個自定義View
爲了顯示文字轉換的動畫。幾個文本將水平穿過屏幕。我遇到的問題是TextView
的繪製方法會導致太多時間,動畫看起來很糟糕。所以我想直接使用Canvas
來繪製文本。不幸的是,我切換到StaticLayout
,仍然發現動畫是生澀。
@pskink它仍然在某些情況下慢。我使用'drawText'和'drawBitmap'來代替。它工作,但我不知道我的解決方案是否優雅。 –