Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/385.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 如何在“活动”中刷新材质微调器?_Java_Android - Fatal编程技术网

Java 如何在“活动”中刷新材质微调器?

Java 如何在“活动”中刷新材质微调器?,java,android,Java,Android,通过使用API,我在微调器中添加了已添加但未在微调器中一次显示的数据,因此如何刷新活动和新添加的数据以一次显示?我可以使用这个链接 (学校:userDetails.getSchools()){ schoolList.add(school.getSchoolName());} 学校下拉列表。设置项(学校列表); schoolDropDown.setOnItemSelectedListener(新材料pinner.OnItemSelectedListener()中){ @凌驾 已选择公共项(Mate

通过使用API,我在微调器中添加了已添加但未在微调器中一次显示的数据,因此如何刷新活动和新添加的数据以一次显示?我可以使用这个链接

(学校:userDetails.getSchools()){
schoolList.add(school.getSchoolName());}
学校下拉列表。设置项(学校列表);
schoolDropDown.setOnItemSelectedListener(新材料pinner.OnItemSelectedListener()中){
@凌驾
已选择公共项(MaterialSpinner视图、整型位置、长id、字符串项){
}
});

您也需要使用
设置适配器(…)
微调器定义适配器。这定义了用于每个单独项目的布局。i、 e

schoolDropDown.setAdapter(new ArrayAdapter(getContext(), android.R.layout.simple_dropdown_item_1line, schoolList));
使用这种方法


adapter.notifyDataSetChanged()

只需调用setAdapter()一次,然后调用adapter.notifyDataSetChanged()来更新数据。

请尝试以下操作:

cityAdapter = new ArrayAdapter<>(frgmActivity, android.R.layout.simple_spinner_dropdown_item, listCityNames);
   cityAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    spCitys.setAdapter(cityAdapter);

而不是这一行:
schoolDropDown.setItems(schoolList)

您需要将适配器设置为微调器以显示数据

ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, schoolList);  
   dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

schoolDropDown.setAdapter(dataAdapter);
ArrayAdapter dataAdapter=新的ArrayAdapter(这是android.R.layout.simple\u spinner\u项目,学校列表);
dataAdapter.setDropDownViewResource(android.R.layout.simple\u微调器\u下拉项);
setAdapter(dataAdapter);
数据更改后,您需要调用


dataAdapter.notifyDataSetChanged()

确保您有add
adapter.setDropDownViewResource(android.R.layout.simple\u微调器\u下拉项)在代码中。@nidhi93首先找到School下拉列表中使用的listview,并从该列表中获取适配器,并使notifydatasetchanged。@nidhi93在MaterialSpinner.java中使用listview显示内容。@nidhi93仍然存在问题?我只使用了网格,并实现了未添加的任何java文件。将此代码放入函数并调用它函数在每次更新数据后运行。我正在使用此链接引用。。。。。。。。。。您应该使用适配器将数据附加到微调器
String[] schoolsArr = schoolList.toArray(new String[schoolList.size()]);
schoolDropDown.setItems(schoolsArr);
ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, schoolList);  
   dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

schoolDropDown.setAdapter(dataAdapter);