Android 如何在java中为数组中的每个元素生成switch case语句? 因此,在短时间内,我有一个包含城市名称(纽约、旧金山、西雅图等)的列表。用户添加到该数组中,因此对于每个用户,该数组的大小和名称都将不同。我试图制作一个下拉菜单微调器,为此我需要使用switch语句。所以,我不知道如何循环遍历arraylist并为数组的每个元素生成case语句?有人能帮忙吗
干杯~Android 如何在java中为数组中的每个元素生成switch case语句? 因此,在短时间内,我有一个包含城市名称(纽约、旧金山、西雅图等)的列表。用户添加到该数组中,因此对于每个用户,该数组的大小和名称都将不同。我试图制作一个下拉菜单微调器,为此我需要使用switch语句。所以,我不知道如何循环遍历arraylist并为数组的每个元素生成case语句?有人能帮忙吗,android,for-loop,switch-statement,spinner,android-arrayadapter,Android,For Loop,Switch Statement,Spinner,Android Arrayadapter,干杯~ dropDownspinner.setAdapter(citySpinner); dropDownspinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { @Override public
dropDownspinner.setAdapter(citySpinner);
dropDownspinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l)
{
switch (i)
{
//So i'm wondering how I can use a for loop and make a case for every element in an array.
}
}
@Override
public void onNothingSelected(AdapterView<?> adapterView) {
}
});
dropDownspinner.setAdapter(citySpinner);
dropDownspinner.setOnItemSelectedListener(新的AdapterView.OnItemSelectedListener()){
@凌驾
已选择公共视图(AdapterView AdapterView、View视图、int i、long l)
{
开关(一)
{
//所以我想知道如何使用for循环并为数组中的每个元素创建一个实例。
}
}
@凌驾
未选择公共无效(AdapterView AdapterView){
}
});
如何将每个用户的城市数据存储在hashmap中,其中键为用户名,值为每个用户的城市列表
例如,如果用户1的城市列表为LISTOFUR1CITIES,类型为list,则可以执行以下操作:
Map<String, List<String>> userCities = new HashMap();
userCities.put("user1", listOfUser1Cities);
以获取该用户的城市。这样就不需要开关盒。dropDownspinner.setAdapter(citySpinner);
dropDownspinner.setAdapter(citySpinner);
dropDownspinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l)
{
Log.e("selected:",list.get(i))
}
@Override
public void onNothingSelected(AdapterView<?> adapterView) {
}
});
dropDownspinner.setOnItemSelectedListener(新的AdapterView.OnItemSelectedListener()){
@凌驾
已选择公共视图(AdapterView AdapterView、View视图、int i、long l)
{
Log.e(“选定:”,list.get(i))
}
@凌驾
未选择公共无效(AdapterView AdapterView){
}
});
“为此,我需要使用一个switch语句”:你是如何得到这个想法的?@Henry在每个例子中,我都见过当在android中使用一个带有数组适配器的微调器制作下拉菜单时,总是使用switch语句来制作下拉微调器中的每个项目。我不确定是否有其他方法来实现它。但我还是想知道,您是否可以为arrayListgetView(int position){String name=array.get(position)}中的每个元素生成一个case语句。@q.Plz发布您的示例。@tinysunlight我添加了我试图做的事情,但我有点迷路了。我在其中添加了一些代码。我不确定你的方法是否有效。因为我必须处理在OnItemSelected()方法中选择的每个位置,
dropDownspinner.setAdapter(citySpinner);
dropDownspinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l)
{
Log.e("selected:",list.get(i))
}
@Override
public void onNothingSelected(AdapterView<?> adapterView) {
}
});