Отображать элементы RecyclerView, начиная снизу, не меняя порядок - PullRequest
0 голосов
/ 10 апреля 2020

Мой обзор переработчика начинается снизу с использованием

LinearLayoutManager layoutManager = new LinearLayoutManager(this, LinearLayoutManager.VERTICAL, false);;
layoutManager.setReverseLayout(true);

Однако порядок элементов в утилизаторе не отображается, как я ожидаю.

Например, я Я добавляю их в следующем порядке:

mList.add("Test message 1");
mList.add("Test message 2");
mList.add("Test message 3");

Но когда я устанавливаю свой ресайклер, он отображается как

Test message 3
Test message 2
Test message 1

Как мне сделать так, чтобы мой переработчик отображал его как

Test message 1
Test message 2
Test message 3

1 Ответ

3 голосов
/ 10 апреля 2020

Похоже, вы должны использовать setStackFromEnd(true), а не setReverseLayout(true).

setReverseLayout(true) меняет порядок ваших предметов - Test message 1 будет отображаться как последний элемент , а не первый. Вот почему вы получаете порядок 3, 2, а затем 1 - вы только что перевернули свой список. Это было бы то, что вы хотели бы, если бы Test message 1 было вашим последним сообщением, что, похоже, не для вас.

setStackFromEnd(true), с другой стороны эффективно складывает ваши предметы в том же порядке, в котором вы их даете снизу вверх. Вот почему Test message 3 появляется внизу с 2 над ним и 1 над ним. Это уместно, если вы просто хотите, чтобы элементы визуально складывались снизу в точном порядке, указанном вами.

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