Передача данных из RecyclerAdapter

152
13 января 2021, 17:10

хочу в этом куске кода

public void onClick(View v) {
    DialogFragment dlg;
    dlg = new barcodeView();
    Coupons coupons = coupons2.get(position);
    int i = coupons.getLogo();
    if (i == 2131165349){
        FragmentManager fragmentManager = ((AppCompatActivity)context).getSupportFragmentManager();
         Intent intent = new Intent(this,barcodeView.class);
        dlg.show(fragmentManager,"barcodeview");
    }

Из RecyclerAdapter где этот код находится передавать данные в DialogFragment но когда создаю intent как показано в моем отрывке кода получаю такой exception Cannot resolve constructor 'Intent(com.example.Activities.RecyclerAdapter, java.lang.Class<com.example.Classes.barcodeView>)'

Как правильно это реализовать?

Answer 1

Для передачи данных между фрагментами можно использовать Bundle

DialogFragment fragment = new DialogFragment();
Bundle bundle = new Bundle();
bundle.putInt("someValue", 5); 
fragment.setArguments(bundle);

А во втором фрагменте извлекаете данные

Bundle bundle = this.getArguments();
int myInt = bundle.getInt("someValue", 0); // 5

Ошибка возникала из-за того, что вы пытались создать Intent с аргументами, для которых не существует конструктора.

READ ALSO
Android Room - Странные результаты

Android Room - Странные результаты

У меня есть Room таблица

145
RSA криптография между Java и C# приложениями

RSA криптография между Java и C# приложениями

Почему при генерации RSA ключа длиной 512 бит в C# и в Java разная длина в байтах публичного ключа?

178
добавление элемента в SimpleListProperty

добавление элемента в SimpleListProperty

у меня есть такая строка

185