Apabila kandungan penyesuai berubah (dan anda menghubungi maklumkan*) RecyclerView meminta reka letak baharu Mulai saat itu, sehingga sistem susun atur memutuskan untuk mengira susun atur baharu (<16 ms). kedudukan susun atur dan kedudukan penyesuai mungkin tidak sepadan kerana susun atur belum menunjukkan perubahan penyesuai lagi.
Jawapannya sangat jelas Perbezaan khusus ialah terdapat perbezaan masa antara kedudukan penyesuai dan reka letak (<16ms Jika anda menukar data Penyesuai dan kemudian menyegarkan paparan, ia akan berlaku). ambil sedikit masa untuk susun atur mengemas kini paparan Dalam tempoh ini, kedudukan yang dikembalikan oleh kedua-dua kaedah ini akan berbeza.
Selain itu, jawapan juga menyebut bahawa kedudukan dalam Penyesuai tidak boleh diperolehi serta-merta selepas notifyDataSetChanged, dan hanya boleh diperolehi selepas susun atur selesai.
Bagi kedudukan Layout, selepas notifyItemInserted, Layout tidak boleh mendapatkan kedudukan baharu serta-merta kerana susun atur belum dikemas kini (ia mengambil masa
Jawapannya sangat jelas Perbezaan khusus ialah terdapat perbezaan masa antara kedudukan penyesuai dan reka letak (<16ms Jika anda menukar data Penyesuai dan kemudian menyegarkan paparan, ia akan berlaku). ambil sedikit masa untuk susun atur mengemas kini paparan Dalam tempoh ini, kedudukan yang dikembalikan oleh kedua-dua kaedah ini akan berbeza.
Selain itu, jawapan juga menyebut bahawa kedudukan dalam Penyesuai tidak boleh diperolehi serta-merta selepas
notifyDataSetChanged
, dan hanya boleh diperolehi selepas susun atur selesai.Bagi kedudukan Layout, selepas
notifyItemInserted
, Layout tidak boleh mendapatkan kedudukan baharu serta-merta kerana susun atur belum dikemas kini (ia mengambil masaMengenai ini