我有一個無限和自動滾動查看尋呼機有3頁(視圖,而不是片段)。使用ObjectAnimator
我建立了一個虛擬的動畫,像這樣:自動滾動查看尋呼機導致幀丟失
valueAnimator.setRepeatMode(ObjectAnimator.RESTART);
valueAnimator.setRepeatCount(ObjectAnimator.INFINITE);
valueAnimator.setDuration(1500);
和onAnimationRepeat
,我用setCurrentItem(nextItem, true)
移動到下一個頁面。然而,如果我坐在這個屏幕上等待,那麼在10次左右頁面更改(使用TinyDancer我觀察到FPS從60下降到20)後,UI性能會變得越來越低。
但是,將行更改爲setCurrentItem(nextItem, false)
(將smoothScroll
設置爲false),可以消除性能下降。
是否有關於多次致電setCurrentItem
可能導致此問題?我可以調整smoothScroll
行爲來解決這個問題嗎?同樣,我在任何時候最多隻能載入5個視圖,而且我在觀看FPS丟棄時觀察到內存使用情況仍然保持不變。
將viewPager的屏幕外頁面限制設置爲零或一個(setOffscreenPageLimit(0))。 –
我已經將它設置爲1;將其設置爲0會給出日誌消息'請求的屏幕外頁面限制0太小;默認爲1。 – blork