对话框中的imageView的setOnClickListener不起作用

 曾静ZHH_423 发布于 2023-02-11 09:56

我在按钮单击时使用了以下方法来显示带有图像列表的对话框.如果我从图像中删除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)

**注意98没有行是:thumb1.setOnClickListener(........

撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有