Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android 關於 OnScrollListener 事件順序次數的簡要分析

Android 關於 OnScrollListener 事件順序次數的簡要分析

編輯:關於Android編程

在 Android 的 OnScrollListener 整個事件我主要分析下他的執行順序:

實現滾動事件的監聽接口


new AbsListView.OnScrollListener(){
    @Override
    public void onScrollStateChanged(AbsListView absListView, int scrollState)
    {
        switch (scrollState) {
            case AbsListView.OnScrollListener.SCROLL_STATE_TOUCH_SCROLL:
                // 手指觸屏拉動准備滾動,只觸發一次        順序: 1
                break;
            case AbsListView.OnScrollListener.SCROLL_STATE_FLING:
                // 持續滾動開始,只觸發一次                順序: 2
                break;
            case AbsListView.OnScrollListener.SCROLL_STATE_IDLE:
                // 整個滾動事件結束,只觸發一次            順序: 4
                break;
            default:
                break;
        }
    }

    @Override
    public void onScroll(AbsListView absListView, int i, int i1, int i2)
    {
        // 一直在滾動中,多次觸發                          順序: 3
    }
}


之前一直很迷糊,後來仔細測試後得出上面的結論


另外對於 ListView 圖片列表的滾動,應該在

SCROLL_STATE_FLING 時讓圖片不顯示,提高滾動性能讓滾動小姑更平滑

SCROLL_STATE_IDLE 時顯示當前屏幕可見的圖片


對於 onScroll() 接口方法基本上不用他


之前看文檔上的說法,用谷歌翻譯出來以為 onScroll 方法是滾動完成後的回調,結果實測是滾動執行中的回調,列表稍滾動一段就要觸發幾十次

http://developer.android.com/reference/android/widget/AbsListView.OnScrollListener.html




不知是文檔沒描述對,還是翻譯不准確,看他語態過去完成時應該是描述錯了吧,感覺應該是 scrolling 才對




  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved