Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/firebase/6.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 如何获得微调器&x27;选择的方法上的id?_Java_Android_Spinner - Fatal编程技术网

Java 如何获得微调器&x27;选择的方法上的id?

Java 如何获得微调器&x27;选择的方法上的id?,java,android,spinner,Java,Android,Spinner,我的问题是:我希望有3个不同的微调器,显示相同类型的对象,并且我希望能够识别从哪个微调器获取数据,例如: 在微调器1中,用户选择了“马铃薯” 在微调器2中,用户选择了“番茄” 在微调器3中,用户选择了“fries” 但我只能得到“用户选择[…]”,因为我不知道如何分辨从哪个微调器获得数据 我想知道在onItemSelected(AdapterView父对象、视图、int位置、长id)方法上是否有这样做的方法?视图很可能是做出选择的微调器。如果在程序开始时将每个微调器的.tag=1设置为不同的数字

我的问题是:我希望有3个不同的微调器,显示相同类型的对象,并且我希望能够识别从哪个微调器获取数据,例如: 在微调器1中,用户选择了“马铃薯” 在微调器2中,用户选择了“番茄” 在微调器3中,用户选择了“fries”

但我只能得到“用户选择[…]”,因为我不知道如何分辨从哪个微调器获得数据


我想知道在onItemSelected(AdapterView父对象、视图、int位置、长id)方法上是否有这样做的方法?

视图很可能是做出选择的微调器。如果在程序开始时将每个微调器的.tag=1设置为不同的数字,则可以查看传递给所选方法的标记值:

if (view.tag == 1)...

您可能已经为所有微调器设置了一个公共侦听器,因此可以通过选中
parent.getId()
,来区分选择了哪个微调器:

@覆盖
已选择公共视图(AdapterView父视图、视图视图、整型位置、长id){
开关(parent.getId()){
案例R.id.喷丝头1:
//你的代码在这里
打破
案例R.id.喷丝头2:
//你的代码在这里
打破
案例R.id.喷丝头3:
//你的代码在这里
打破
}
}

你能提供你的代码让我帮你吗
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
    switch (parent.getId()){
        case R.id.spinner1:
            //your code here
            break;
        case R.id.spinner2:
            //your code here
            break;
        case R.id.spinner3:
            //your code here
            break;
    }
}