Метод Onbind в адаптере рециркуляции - PullRequest
0 голосов
/ 11 февраля 2019

Я делаю простой просмотр корзины.После того, как я расширил адаптер recycleview и реализовал методы, мой метод onbind выглядит следующим образом:

public void onBindViewHolder(@NonNull ImageViewHolder imageViewHolder, int i)

В каждом уроке, которому я следую, нет «i» его «позиции» там.Пожалуйста, объясните, почему я не получаю позицию?

Ответы [ 2 ]

0 голосов
/ 11 февраля 2019

Когда вы реализуете методы с помощью Android Studio, он создает пустые методы.Каждый параметр метода должен иметь имя, и Android Studio создает его для вас.Получив

public void onBindViewHolder(@NonNull ImageViewHolder imageViewHolder, int i)

, вы можете переименовать imageViewHolder и i по своему желанию, потому что в конечном итоге Android будет вызывать ваш метод, основываясь на имени метода и типах аргументов метода (не именах).Имя position имеет больше смысла, чем просто i, поэтому автор учебника решил назвать это int таким образом.

0 голосов
/ 11 февраля 2019

Неважно, как называется переменная.Пусть это i, position, foo или что-то еще.Но это всегда позиция предмета.Это то, что документы говорит:

bindViewHolder (держатель VH, позиция int) Этот метод внутренне вызывает onBindViewHolder (ViewHolder, int) для обновления RecyclerViewСодержимое .ViewHolder с элементом в заданной позиции, а также устанавливает некоторые закрытые поля, которые будут использоваться RecyclerView.

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