У меня есть адаптер, который использует некоторый пользовательский список объектов. Я хотел передать щелкнутый объект другому действию. Поэтому я реализовал объектный класс Parcelable.
Чтобы отправить данные с адаптера
view.findViewById(R.id.play_btn).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(getContext(), YouTubePlayerActivity.class);
Bundle bundle = new Bundle();
bundle.putParcelable("data", movie));
intent.putExtras(bundle);
mContext.startActivity(intent);
Чтобы получить данные в целевом действии
Bundle b = getIntent().getExtras();
ArrayList<Video> videos = b.getParcelable("data");
Но когда я запускаю его, он ничего не пропускает. Я попытался передать другие более простые значения, такие как строки и целые числа, но они тоже не были переданы.
Затем мне пришлось выполнить задачу, создав интерфейс. И это сработало. Но я все еще не понимаю этого неожиданного поведения при запуске активности с адаптеров. Не могли бы вы объяснить причину такого неожиданного поведения?
кажется дубликатом stackoverflow.com/questions/1441871/…
@AtefHares это список. Я знаю, что сделал опечатку при вводе кода здесь. Но неважно, что я прохожу
что означает
movie? это один объект или список?