我有一个从远程数据库填充的列表视图。 这是 OnPostExecute 方法的代码:
@Override
protected void onPostExecute(Void result)
{
progressBarSubject.setVisibility(View.GONE);
//CumplesListView.setVisibility(View.VISIBLE);
if(temasHomeList != null)
{
ListAdapterClassTemasHome adapter = new ListAdapterClassTemasHome(temasHomeList, context);
TemasListView.setAdapter(adapter);
TemasListView.setClickable(true);
TemasListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
String nombre_tema = temasHomeList.get(position).nombre_tema ;
String materia = temasHomeList.get(position).materia ;
String id_tema = temasHomeList.get(position).id_tema ;
String tema_seleccionado = temasHomeList.get(position).seleccionado ;
mPref = getActivity().getSharedPreferences(MIEXAMEN, Context.MODE_PRIVATE);
SharedPreferences.Editor editor = mPref.edit();
String num_examen = randomString(8);
editor.putString("id_tema",id_tema);
editor.apply();
// SendData();
// InicioFragment firstFragment = new InicioFragment();
// ((MainActivity)getActivity()).getSupportFragmentManager().beginTransaction()
// .replace(R.id.frame, firstFragment).commit();
}
});
}
}
如您所见,我正在使用单击的项目位置来获取值,以便在代码中进一步实现。 现在我需要更改字段的位置值:temasHomeList.get(position(.seleccionado,然后通知对适配器的更改,以使用新值刷新 ListView。 可能吗?
您只需要按位置从列表中获取旧值,然后更新它。 并通知数据集像吹代码
一样更改
temasHomeList.get(position).seleccionado = [your_new_value];