нужно заменить setUserVisibleHint в AndroidX, так как он устарел - PullRequest
0 голосов
/ 18 апреля 2020

У меня есть 3 фрагмента, прикрепленных к viewpager.

У меня есть одна база данных, и все данные трех фрагментов связаны друг с другом, поэтому, если я сделаю какое-либо изменение во фрагменте 1, это также должно быть отражено во фрагменте 2 (когда он виден пользователю)

ранее я использовал

 @Override
    public void setUserVisibleHint(boolean isVisibleToUser) {
        super.setUserVisibleHint(isVisibleToUser);
        if(isVisibleToUser){
            getFragmentManager().beginTransaction().detach(this).attach(this).commit();
        }
    }

, но setUserVisibleHint устарел, поэтому мне нужно заменить его, но облако не нашло правильного решения. Я попытался использовать «detach (). Attach ()» в onResume, но затем он обращается к бесконечному l oop.

Примечание:

  1. я пытался использовать «notifyDataSetChanged ()» вместо detach.attach, но он не работает должным образом и требует времени для отображения данных.

  2. Я пытался воссоздать активность, но это pu sh. первый пункт Я хочу, чтобы мой recyclerView отображался в том же состоянии, в котором он был раньше, если бы он находился на элементе № 24, прежде чем покинуть его, а затем всякий раз, когда пользователь возвращается к тому же фрагменту, выполняя данные detach.attach, и recyclerView находится в той же позиции.

Скажите, пожалуйста, альтернативное решение для detach.attach каждый раз, когда желаемый фрагмент виден пользователю.

Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...