Прокрутите окно реселлера до новой позиции после обновления комнаты - PullRequest
0 голосов
/ 29 апреля 2019

У меня есть recyclerView, показывающий список пользователей из базы данных Room.

ДАО

    @Query("SELECT * from users_table ORDER BY name COLLATE NOCASE ASC")
    LiveData<List<User_Entity>> getAllUsers();

активность

    RecyclerView mRecyclerView = view.findViewById(R.id.traininglistview);
    usersViewModel = ViewModelProviders.of(this).get(UsersViewModel.class);

    usersViewModel.getAllUsers().observe(this, new Observer<List<User_Entity>>() {
        @Override
        public void onChanged(@Nullable List<User_Entity> user_entities) {
            mUsers = user_entities;
            mAdapter.setUsers(user_entities);
        }
    });

    mAdapter = new UsersAdapter(context, usersViewModel);
    mRecyclerView.setAdapter(mAdapter);
    mLayoutManager = new LinearLayoutManager(context);
    mRecyclerView.setLayoutManager(mLayoutManager);
    ...

Список пользователей упорядочен по имени пользователя.

Когда я щелкаю по элементу пользователя, запускается новое действие, позволяющее мне редактировать значения пользователя.

Если я изменю имя пользователя, так как мой запрос упорядочен по имени, позиция нового пользователя recyclerView изменится.

При возврате из редактирования пользовательских значений, как я могу прокрутить свой recyclerView, чтобы показать только что отредактированного пользователя? Или как найти новую позицию в списке пользователей для использования mLayoutManager.scrollToPosition?

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