Я использовал следующий метод при нажатии кнопки, чтобы отобразить диалог со списком изображений. Диалог работает нормально, если я удалю setOnclickListener из изображений. Но приложение остановится, к сожалению, если я использовал setOnclickListener к изображениям.setOnClickListener изображения в диалоговом окне не работает
private void showFrame(){
frameDialog = new Dialog(CameraActivity.this);
frameDialog.setContentView(R.layout.frame_selection);
frameDialog.setTitle("Select a frame");
ImageView thumb1 = (ImageView) findViewById(R.id.thumbView1);
ImageView thumb2 = (ImageView) findViewById(R.id.thumbView2);
ImageView thumb3 = (ImageView) findViewById(R.id.thumbView3);
frameDialog.show();
thumb1.setOnClickListener(
new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(getApplicationContext(), "to this is okay!", Toast.LENGTH_LONG).show();
frameDialog.dismiss();
}
}
);
thumb2.setOnClickListener(
new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(getApplicationContext(), "to this is okay!", Toast.LENGTH_LONG).show();
frameDialog.dismiss();
}
}
);
thumb3.setOnClickListener(
new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(getApplicationContext(), "to this is okay!", Toast.LENGTH_LONG).show();
frameDialog.dismiss();
}
}
);
}
LogCat
12-13 11:22:07.110: E/AndroidRuntime(17913): FATAL EXCEPTION: main
12-13 11:22:07.110: E/AndroidRuntime(17913): java.lang.NullPointerException
12-13 11:22:07.110: E/AndroidRuntime(17913): at com.***.**.**.showFrame(CameraActivity.java:98)
12-13 11:22:07.110: E/AndroidRuntime(17913): at com.**.**.***.access$0(CameraActivity.java:87)
12-13 11:22:07.110: E/AndroidRuntime(17913): at com.**.**.**$3.onClick(CameraActivity.java:79)
12-13 11:22:07.110: E/AndroidRuntime(17913): at android.view.View.performClick(View.java:4261)
12-13 11:22:07.110: E/AndroidRuntime(17913): at android.view.View$PerformClick.run(View.java:17420)
12-13 11:22:07.110: E/AndroidRuntime(17913): at android.os.Handler.handleCallback(Handler.java:615)
12-13 11:22:07.110: E/AndroidRuntime(17913): at android.os.Handler.dispatchMessage(Handler.java:92)
12-13 11:22:07.110: E/AndroidRuntime(17913): at android.os.Looper.loop(Looper.java:137)
12-13 11:22:07.110: E/AndroidRuntime(17913): at android.app.ActivityThread.main(ActivityThread.java:4944)
12-13 11:22:07.110: E/AndroidRuntime(17913): at java.lang.reflect.Method.invokeNative(Native Method)
12-13 11:22:07.110: E/AndroidRuntime(17913): at java.lang.reflect.Method.invoke(Method.java:511)
12-13 11:22:07.110: E/AndroidRuntime(17913): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1038)
12-13 11:22:07.110: E/AndroidRuntime(17913): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:805)
12-13 11:22:07.110: E/AndroidRuntime(17913): at dalvik.system.NativeStart.main(Native Method)
** NB 98-линия не является: thumb1.setOnClickListener (........
Спасибо @Raghunandan за ваш быстрый ответ с объяснением .. :) – CrazyLearner