Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/210.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用警报对话框从内部类访问变量_Java_Android - Fatal编程技术网

Java 使用警报对话框从内部类访问变量

Java 使用警报对话框从内部类访问变量,java,android,Java,Android,我正在创建一个Android Java应用程序,用于转换不同的风速,并根据需要的转换设置了一个if语句。在alertdialog确认了用户的选择后,我正在使用意图转移到第二个活动。问题是,意图变量i在内部类中没有被访问,并且它“找不到symbol方法onclicklistener。有什么想法吗 Intent i = new Intent(getBaseContext(), DisplayCalculationActivity.class); i.putExtra("speedVa

我正在创建一个Android Java应用程序,用于转换不同的风速,并根据需要的转换设置了一个if语句。在alertdialog确认了用户的选择后,我正在使用意图转移到第二个活动。问题是,意图变量i在内部类中没有被访问,并且它“找不到symbol方法onclicklistener。有什么想法吗

Intent i = new Intent(getBaseContext(), DisplayCalculationActivity.class);
        i.putExtra("speedValue",speed);
        i.putExtra("measurement", measurement);

        AlertDialog dialog = new AlertDialog.Builder(this).create();
        dialog.setMessage("Are you sure you want to convert\n " + speed + "from " + measurement);
        dialog.setButton(DialogInterface.BUTTON_POSITIVE, "Convert",
                DialogInterface.OnClickListener(new OnClickListener() {
                    public void onClick(View v) {

                        startActivity(i);
                    }
                })
        );

        dialog.setButton(DialogInterface.BUTTON_NEGATIVE, "No",
                DialogInterface.OnClickListener(new OnClickListener() {
                    public void onClick(View v)  {

                        dialog.dismiss();
                    }
                })
        );


        dialog.setButton(DialogInterface.BUTTON_NEUTRAL, "Cancel",
                DialogInterface.OnClickListener(new OnClickListener() {
                    public void onClick(View v) {

                        dialog.dismiss();
                    }
                })
        );


    }

您需要将
i
声明为最终版本。

您需要将
i
声明为最终版本。

将意图声明为最终版本,并更正您对OnClickListener的使用

e、 g


将意图声明为最终目的,并更正您对OnClickListener的使用

e、 g


声明
Intent i
final
声明
Intent i
final
非常感谢!非常好!非常好!非常好!
dialog.setButton(DialogInterface.BUTTON_POSITIVE, "Convert", new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialog, int which) {
                DisplayCalculationActivity.this.startActivity(i);
            }
        }
);