У меня есть адаптер, который использует какой-то список пользовательских объектов. Я хотел передать выбранный объект другому виду деятельности. Поэтому я сделал объектный класс реализующим 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");
Но когда я запустил его, ничего бы не прошло.
Я попытался передать другие более простые значения, такие как строки и целые числа, и они тоже не были переданы.
Тогда мне нужно было выполнить задачу, создав интерфейс. И это сработало. Но я до сих пор не понимаю этого неожиданного поведения при запуске активности с адаптеров. Не могли бы вы ответить на причину этого неожиданного поведения?