2017-03-13 51 views
0

我與導航菜單視圖中工作,我以編程方式滾動,然後獲取其項目的Y位置。 但是,獲得該項目的位置是列表後立即運行(使用佈局管理器)的代碼開始滾動,當它尚未完成滾動,改變職位。 如何在「scrollToPositionWithOffset」之後等待滾動操作結束後運行其餘代碼?只得到後滾動功能項目完成

這裏是我的代碼:

RecyclerView recyclerView = (RecyclerView) navigationView.getChildAt(0); 
    LinearLayoutManager layoutManager = (LinearLayoutManager) recyclerView.getLayoutManager(); 

    layoutManager.scrollToPositionWithOffset(4, 0); 

    //it should wait the line above run completely to can run too 
    mImage.animate().y(navView.getChildAt(4).getY()); 

回答

0

在研究,我發現這個:

這裏的好處是,它運作良好,並正在顯示/隱藏鍵盤,甚至會處理。

壞的是,它被稱爲對不感興趣的情況下(這意味着它具有誤報),但它經常不是爲滾動事件,所以這是很好對我來說足夠。

+0

感謝,但對我來說,有時所有的項目都沒有顯示,因爲我不需要去列表的末尾,但我需要知道,如果滾動工作停了下來,它並不需要是在列表的最後,但始終當滾動工作和停止。 – JBH