Помогите с java (android)

Например есть MainActivity.java (activity_main.xml) и DialogFragment (fragment_dialog.xml), и при нажатии одной из изображений imgClick1 открывается DialogFragment.java, и как в этом диалогфрагменте поймать этот клик, типо этого:

String img1 = "https://ge/gal1.jpg";
ImageView i1;
 if (DialogFragment.Open(imgClick1)) {
     i1 = findViewById(R.id.image1);
     Picasso.get().load(img1).into(i1);
}

код не правильный, потому что не знаю


Ответы (1 шт):

Автор решения: Tiarait

Вы не сможете напрямую узнать откуда был запущен DialogFragment, можете перед вызовом запоминать "клик" - ImageView внутри вашего класса, а можете создать общую функцию для вызовов DialogFragment передавая туда то, с чем хотите взаемодействовать, покажу на примере AlertDialog

public void showDialog(View v) {
    final AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(getApplicationContext());
    alertDialogBuilder.setTitle(CaseHelper.getInterfaceTextCase(getApplicationContext(), "Заголовок"));
    alertDialogBuilder.setMessage("Сообщение");
    alertDialogBuilder.setPositiveButton("кнопка Да", new DialogInterface.OnClickListener() {
        @Override
        public void onClick(DialogInterface dialog, int which) {
            //действия с View
            //если нужно именно ImageView то делаем проверку 
            //if (v instanceof ImageView)
            v.setVisibility(View.GONE);
        }
    });
    alertDialogBuilder.show();
}
→ Ссылка