以编程方式填充微调器 android studio
fill spinner android studio programmatically
我需要制作自定义表单(显示 x 个字段)。
这是我创建微调器列表对象的方法:
Spinner[] listeCouleurs = new Spinner[nbEquipes];
listeCouleurs: is the name of the list
nbEquipes: is an int, (number of teams)
还有我要插入列表 (listeCouleurs) 的元素:
ArrayList<String> couleurs = new ArrayList<String>();
couleurs.add("Rouge");
couleurs.add("Bleu");
couleurs.add("Vert");
couleurs.add("Rose");
couleurs.add("Jaune");
然后,我将元素插入 x 微调器的方法是:
listeCouleurs[i] = new Spinner(this);
ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(this,listeCouleurs[i], couleurs);
但是,出现了这个错误:
Error:(94, 48) error: no suitable constructor found for
ArrayAdapter(ConfigGame,Spinner,ArrayList) constructor
ArrayAdapter.ArrayAdapter(Context,int,int) is not applicable (argument
mismatch; Spinner cannot be converted to int) constructor
ArrayAdapter.ArrayAdapter(Context,int,String[]) is not applicable
(argument mismatch; Spinner cannot be converted to int) constructor
ArrayAdapter.ArrayAdapter(Context,int,List) is not applicable
(argument mismatch; Spinner cannot be converted to int)
如何解决这个问题?
此致
ArrayAdapter 构造函数的第二个参数应该是 int 而不是 Spinner
调用示例:
Spinner spinner = new Spinner(this);
ArrayAdapter<String> spinnerArrayAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, spinnerArray); //selected item will look like a spinner set from XML
spinnerArrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(spinnerArrayAdapter);
有关可能的构造函数参数的更多信息,请参阅:
https://developer.android.com/reference/android/widget/ArrayAdapter.html
确保在初始化适配器后包含这两行:
spinnerArrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(spinnerArrayAdapter);
希望对您有所帮助!
我需要制作自定义表单(显示 x 个字段)。 这是我创建微调器列表对象的方法:
Spinner[] listeCouleurs = new Spinner[nbEquipes];
listeCouleurs: is the name of the list
nbEquipes: is an int, (number of teams)
还有我要插入列表 (listeCouleurs) 的元素:
ArrayList<String> couleurs = new ArrayList<String>();
couleurs.add("Rouge");
couleurs.add("Bleu");
couleurs.add("Vert");
couleurs.add("Rose");
couleurs.add("Jaune");
然后,我将元素插入 x 微调器的方法是:
listeCouleurs[i] = new Spinner(this);
ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(this,listeCouleurs[i], couleurs);
但是,出现了这个错误:
Error:(94, 48) error: no suitable constructor found for ArrayAdapter(ConfigGame,Spinner,ArrayList) constructor ArrayAdapter.ArrayAdapter(Context,int,int) is not applicable (argument mismatch; Spinner cannot be converted to int) constructor ArrayAdapter.ArrayAdapter(Context,int,String[]) is not applicable (argument mismatch; Spinner cannot be converted to int) constructor ArrayAdapter.ArrayAdapter(Context,int,List) is not applicable (argument mismatch; Spinner cannot be converted to int)
如何解决这个问题?
此致
ArrayAdapter 构造函数的第二个参数应该是 int 而不是 Spinner
调用示例:
Spinner spinner = new Spinner(this);
ArrayAdapter<String> spinnerArrayAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, spinnerArray); //selected item will look like a spinner set from XML
spinnerArrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(spinnerArrayAdapter);
有关可能的构造函数参数的更多信息,请参阅: https://developer.android.com/reference/android/widget/ArrayAdapter.html
确保在初始化适配器后包含这两行:
spinnerArrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(spinnerArrayAdapter);
希望对您有所帮助!