Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/178.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 为什么可以';我不能在同一个类中使用微调器的int吗?_Java_Android - Fatal编程技术网

Java 为什么可以';我不能在同一个类中使用微调器的int吗?

Java 为什么可以';我不能在同一个类中使用微调器的int吗?,java,android,Java,Android,好的,我正在开发一个android应用程序,我已经植入了旋转器。。。我总共有四个微调器,我了解到,如果微调器从字符串中读取选项,它会为选择定义一个数字(即第一个选项是“0”,下一个选项是“1”,依此类推) 我有以下微调器代码 Spinner a = (Spinner) findViewById(R.id.spinner1); a.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {

好的,我正在开发一个android应用程序,我已经植入了旋转器。。。我总共有四个微调器,我了解到,如果微调器从字符串中读取选项,它会为选择定义一个数字(即第一个选项是“0”,下一个选项是“1”,依此类推)

我有以下微调器代码

        Spinner a = (Spinner) findViewById(R.id.spinner1);
    a.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {

        @Override
        public void onItemSelected(AdapterView adapter, View v, int a,
                long lng) {
            // do something here
            Toast.makeText(adapter.getContext(), "You selected: " + a,
                    Toast.LENGTH_SHORT).show();
        }

        @Override
        public void onNothingSelected(AdapterView arg0) {
            // do something else
        }
    });
还有另一个,但有int“b”

但是后来在同一节课上,我想用一些数学来得到e=a,b(即如果a=6和b=5,e=65,或者a=4和b=3,e=43) 通过执行

int e=a*10+b;
问题是我想在你按下按钮时显示它,所以我有以下代码

public void Calc(View v) {
    int e = a * 10 + b;
    Toast.makeText(this, "Value: " + e, Toast.LENGTH_LONG).show();
}
但导致错误“a”和“b”无法解析为变量
这是为什么?我如何创建一个能够读取这些变量的按钮?

这是一个范围问题,因为您在一个方法中声明了
a
,所以在该方法之外是不可访问的。将微调器声明为类成员,并仅在方法中分配它:

a = (Spinner) findViewById(R.id.spinner1);
课程范围:

Spinner a;
在方法中:

a = (Spinner) findViewById(R.id.spinner1);
然后: