Java 为微调器的项目赋值,并在计算中使用它们
我正在设计一个应用程序,它有4个微调器,一个文本视图和一个按钮,并根据他们的选择来计算翻译服务的价格 我想知道如何在微调器中为项目赋值,然后在计算中使用它 例如,其中一个项目是英语,所以我想给出值2,所以当这个人点击英语值2时,可以在下面的公式中使用 结果=在微调器1中选择的项目值*在微调器2中选择的项目值*在微调器3中选择的项目值*在微调器4中选择的项目值Java 为微调器的项目赋值,并在计算中使用它们,java,android,Java,Android,我正在设计一个应用程序,它有4个微调器,一个文本视图和一个按钮,并根据他们的选择来计算翻译服务的价格 我想知道如何在微调器中为项目赋值,然后在计算中使用它 例如,其中一个项目是英语,所以我想给出值2,所以当这个人点击英语值2时,可以在下面的公式中使用 结果=在微调器1中选择的项目值*在微调器2中选择的项目值*在微调器3中选择的项目值*在微调器4中选择的项目值 任何提示都是有用的最好的方法如下: 1。创建自定义类 class MyClass { public int Id; pub
任何提示都是有用的最好的方法如下: 1。创建自定义类
class MyClass {
public int Id;
public String Title;
public long Price;
public MyClass (int id,String title,long price){
Id = id;
Title = title;
Price = price;
}
@Override
public String toString() {
return Title;
}
}
2。对自定义型号的微调器使用阵列适配器:
new ArrayAdapter<MyClass>(getApplicationContext(),
android.R.layout.simple_dropdown_item_1line, YOUR_LIST_OF_ITEMS);
((MyClass)YOUR_SPINNER.getSelectedItem()).Id
通过这种方式,您可以访问模型中的任何参数
重要注意事项:
不要忘记在自定义类中重写toString方法。这是在微调器中显示标题的方法
通过使用这种方法,您不需要设置任何侦听器或保留对所选项的引用
编辑:使用字符串而不是任何自定义类
如果您想使用字符串数组,这是确定的。在获取所选项目的最后,只需在数组中搜索并找到索引并使用它
String selectedItem = YOUR_SPINNER.getSelectedItem().toString();
int index = YOUR_STRING_ARRAY_LIST.indexOf(selectedItem);
为什么你不使用if-else,if(spinner1.getSelectedItem().toString().equals(“英语”){value1=2}和wise for all SpinnerTNX作为你的答案,所以我在onSelectedItemClickedListener方法中使用它?值1不被android研究识别我不说值1,我说的是value1,它是一个变量名(你可以使用任何变量名)我知道了,谢谢。但这不允许我感谢你的回答Heshmatinia先生。我有一个问题,那些身份证的名称和价格指的是什么?我的名单是波斯语的,这就是为什么我没有把它们贴在这里,它们指的是你喜欢的任何东西!这只是一个演示案例,帮助您了解您可以使用任何自定义模型。如果您不需要它们,只需移除它们即可@我喜欢编程,所以我在课堂上是如何使用它们的