Comment faire pour Actualiser la Coutume Adaptateur Liste instantanément dans Android?

Je suis en train d'essayer d'obtenir un titre de liste, Ce que je veux, c'est que quand je tape dans l'Edittext sur la page d'accueil, puis ajouter dans la liste, après avoir cliqué sur le bouton Ok. Droit maintenant, je ne sais pas où mettre mon actualisation de la méthode que j'appelle de customAdapter classe sur la page d'Accueil de l'Activité.

Veuillez consulter ma page d'Accueil Activité:

public class Main_Activity extends Activity implements OnClickListener {
Button ok;
EditText addTasklist;
ListView list_tasklistname;
TodoTask_Database db;
CustomAdapter cAdapter;
List<Tasks> list = new ArrayList<Tasks>();
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main_layout);
    ok = (Button)findViewById(R.id.add);
    ok.setOnClickListener(this);
    list_tasklistname = (ListView)findViewById(R.id.listview);
    db = new TodoTask_Database(getApplicationContext());
    list = db.getAllTaskList();
    CustomAdapter adapter = new CustomAdapter(Main_Activity.this, R.layout.tasklist_row, list);
    list_tasklistname.setAdapter(adapter);
    /*list_tasklistname.setOnItemClickListener(new OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView<?> adapterView, View v, int position,
                long id) {
        }
    });*/
    db.close();
}
}
@Override
public void onClick(View v) {
    switch(v.getId()) {
    case R.id.add:
        addTasklist = (EditText)findViewById(R.id.addTasklist);
        if(addTasklist!=null) {
             String addtasktitle = addTasklist.getText().toString();
             db = new TodoTask_Database(getApplicationContext());
             db.addTaskList(addtasktitle);
        }
        break;
    }
}
}

Adaptateur Personnalisé:

 public class CustomAdapter extends ArrayAdapter<Tasks> {
private List<Tasks> dataitem;
private Activity activity;
public CustomAdapter(Activity a, int textViewResourceId, List<Tasks> items) {
super(a, textViewResourceId, items);
this.dataitem = items;
this.activity = a;
}
public static class ViewHolder{
public TextView tasklistTitle;
public TextView createdDate;
public CheckBox completedflag;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View v = convertView;
ViewHolder holder;
if (v == null) {
LayoutInflater vi =
(LayoutInflater)activity.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
v = vi.inflate(R.layout.tasklist_row, null);
holder = new ViewHolder();
holder.tasklistTitle = (TextView) v.findViewById(R.id.tasklistTitle);
holder.createdDate = (TextView) v.findViewById(R.id.createdDate);
holder.completedflag = (CheckBox) v.findViewById(R.id.completedflag);
v.setTag(holder);
}
else
holder=(ViewHolder)v.getTag();
final Tasks custom = dataitem.get(position);
if (custom != null) {
holder.tasklistTitle.setText(custom.getTaskListTitle());
holder.createdDate.setText(custom.getTaskListCreated());
holder.completedflag.setText(custom.getTaskListCompletedFlag());
}
return v;
}
//refresh Adapter Method calling in Homepage Activity
public synchronized void refresAdapter(List<Tasks> dataitems) {   
dataitem.clear();
dataitem.addAll(dataitems);
notifyDataSetChanged();
}
}
appel adapter.notifyDatasetChanged() pour actualiser la liste.

OriginalL'auteur Shweta | 2013-07-03