2017-05-07 64 views
0

的設置:project link境界DB&RecyclerView計時問題而刪除項目

我使用RecyclerView(帶RealmRecyclerViewAdapter)顯示名稱的列表,它看起來像this

爲了管理左上角粘性索引字母的視圖與項目本身的索引字母,RecyclerView上的ScrollListener通過updateStickyIndex()設置粘性索引和項目索引的可見性。

問題:

每當我刪除領域DB的東西,更新在的onSuccess()的RealmTransaction的粘性指標項目之前將執行實際上已經改變了對RecyclerView。爲了在項目發生更改後調用updateStickyIndex(),我必須延遲onSuccess()中的調用。

我錯過了什麼?

+0

您錯過了從數據庫中刪除項目後通知適配器。 –

+0

RealmRecyclerViewAdapter負責處理...因此發生的變化只是在RealmTransaction的onSuccess()回調後發生。 – kazume

+0

我在尋找的是如果有方法知道適配器本身何時完成將更改傳遞給recyclerview? – kazume

回答

0

通過覆蓋LinearLayoutManager的onLayoutCompleted()(從here獲得他的值),可以在正確的時刻(在LayoutManager實際完成DB/Adapter中的更改之後)調用粘性索引的更新。