0
當對ListView
中的項目設置動畫高度時,ViewBinder
中的setViewValue()
方法對於每次佈局更改都會被調用幾次,從而使動畫非常慢。Android:只改變佈局時避免視圖無效
我目前正在通過在onAnimationStart()
中設置disableViewUpdate
標誌並在onAnimationEnd()
中將其關閉來解決此問題。如果標誌被設置,則setViewValue()
返回true
,避免任何數據庫查找。但是在每個動畫步驟中仍然有數十或數百個致電setViewValue()
的電話。
我的問題是:有沒有辦法避免setViewValue()
被稱爲佈局更改的結果?
我應該重寫哪種方法?我嘗試了requestLayout()和isLayoutRequested(),但沒有一個用於阻止ViewBinder中的setViewValue()被調用。我也試圖調用postInvalidateDelayed(long delayMilliseconds),但沒有成功。 –