Неожиданное поведение при передаче данных, подлежащих передаче, в другое действие из адаптера - PullRequest
0 голосов
/ 24 марта 2019

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

Но когда я запустил его, ничего бы не прошло. Я попытался передать другие более простые значения, такие как строки и целые числа, и они тоже не были переданы.

Тогда мне нужно было выполнить задачу, создав интерфейс. И это сработало. Но я до сих пор не понимаю этого неожиданного поведения при запуске активности с адаптеров. Не могли бы вы ответить на причину этого неожиданного поведения?

...