2012-10-26 184 views
1

看來EditText可以使用Html.fromHtml獲得有限的html格式,但添加圖像時無法爲其設置動畫效果。使用動畫GIF不起作用,動畫列表只顯示動畫的第一幀。Android延伸EditText

如果這是可能的,我只是在做的過程中出現問題,請告訴我。

假設這是不可能的,我想擴展EditText並重寫處理HTML的部分,以便啓用動畫。

可悲的是我不知道如何做到這一點,任何指針將不勝感激。

+0

你可以嘗試與[this](https://github.com/hotveryspicy/ImageViewGIF)(不確定) –

+0

我回答了一個類似的問題,[在這裏找到](http://stackoverflow.com /問題/ 8632801 /如何到添加動畫,表情功能於TextView中 - 或 - EditText上合的Android/8632889#8632889)。雖然我設法得到了一個可行的概念證明,但這並不理想。但是,您可能能從我的發現中獲得一些有用的信息/想法。 –

回答

1

第1步:創建您自己的ReplacementSpan子類,基於斷DynamicDrawableSpanImageSpan,即處理其中DrawableAnimationDrawable並開始動畫的情況。

第2步:取Spanned對象你從fromHtml()回來,轉換的ImageSpan所有出現從步驟#1自定義跨度類的事件,通過尋找現有ImageSpan對象(getSpans()),刪除它們(removeSpan() ),並添加替換(setSpan())。

步驟#3:祈禱它的工作,並不是一個巨大的性能豬。

+1

我喜歡'step#3'hahaha:D –

+0

我不確定第一步怎麼做。創建ReplacmentSpan後,我是否需要重寫draw()函數?或getDrawable()? – aviran

+0

@aviran:試試MH在你的問題評論中的鏈接代碼。就個人而言,我從來沒有嘗試創建自己的'DynamicDrawableSpan',所以我不知道所有的細節。 – CommonsWare