Почему notifyDataSetChanged взорвать PagerTransformer в ViewPager2? - PullRequest
0 голосов
/ 15 октября 2019

Я использую ViewPager2 версии 1.0.0-бета05, с RecyclerView.Adapter и ZoomOutPageTransformer , я обнаружил, что когда мы вызываем notifyDataSetChanged, представление ViewPager взрывается.

В версии 1.0.0-alpha01 они сказали, что notifyDataSetChanged полностью работоспособен (исправлены ошибки VP1)

Blowed view

Нормальное поведение

        pagerAdapter?.clickListener = this
        with(pager) {
            clipToPadding = false
            clipChildren = false
            offscreenPageLimit = 3
        }
        pager.adapter = pagerAdapter
        pager.setPageTransformer(ZoomOutPageTransformer())


        GlobalScope.launch(Dispatchers.Main) {
            // launch a new coroutine in background and continue
            repeat(15) {
                delay(5000L) // non-blocking delay for 1 second (default time unit is ms)
                Log.e("hello", "notify")
                pagerAdapter?.notifyDataSetChanged()
            }
        }

Я не изменил источник данных, я только сделал этот небольшой тест, и проблема все еще сохраняется, размер представления изменялся случайным образом случайно после каждого вызова notifyDataSetChanged.

...