У меня есть код, который создает всплывающее окно и назначает ему XML-макет, в котором есть два элемента ImageView.
popupWindow.setTitle("New note");
popupWindow.setMessage("choose the type of note to create");
View noteChoices = inflater.inflate(R.layout.addnotepopup, null);
popupWindow.setView(noteChoices);
popupWindow.setPositiveButton(null, null);
popupWindow.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
//
}
});
popupWindow.show();
addnotepopup.xml имеет два элемента ImageView
Как я могу добавить прослушиватели кликов к этим двум элементам? Когда я пытаюсь сделать это так же, как любая другая кнопка, findViewById() возвращает нулевое значение
XML-код
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal"
android:weightSum="2" >
<ImageView
android:id="@+id/recordnoteoption"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:paddingTop="10dp"
android:paddingBottom="10dp"
android:src="@drawable/medium_mic"
android:layout_weight="1" />
<ImageView
android:id="@+id/typenoteoption"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:paddingTop="10dp"
android:paddingBottom="10dp"
android:src="@drawable/medium_keyboard"
android:layout_weight="1" />
</LinearLayout>
Попробуй это:
popupWindow.findViewById(R.id.yourId);
или если вы хотите:
noteChoices.findViewById(R.id.yourId);
R.layout.addnotepopup
поместите XML-макет дляR.layout.addnotepopup
? Также поместите код, который вы используете дляfindViewById
?