۱۳۹۴/۰۵/۲۷, ۰۶:۱۲ ب.ظ
سلام دوست عزیز برای رفرش کردن می توانی در یک تابع فرضا با نام (public void refresh) لیست ویوی مورد نظرت را مقدار دهی کنی و بعد از حذف این تابع را فراخوانی کنی. مانند کد های زیر:و در کد های زیر دقت کنید که بعد از حذف یک آیتم از لیست ویو رفرش فراخوانی شده است و لیست ویو از نو مقدار دهی می شود.امیدوارم توانسته باشم به شما کمک کنم.
کد پیاچپی:
public void [color=#B22222]refresh[/color](){
db.open();
int count=db.count();
[color=#FF0000]name[/color]=new String[count];
idt=new int[count];
for(int i=0;i<count;i++){
[color=#FF0000]name[/color][i]=db.Display(i, 1)+"\n"+db.Display(i, 2);
idt[i]=Integer.parseInt( db.Display(i,0));
}
db.close();
list1.setAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,[color=#FF0000]name[/color]));
}
کد پیاچپی:
delete.setOnClickListener(new OnClickListener(){
public void onClick(View v) {
dllo.cancel();
final Dialog dl=new Dialog(Main.this);
dl.setContentView(R.layout.dialog);
dl.setTitle("حذف");
TextView txt=(TextView)dl.findViewById(R.id.text);
Button ok=(Button)dl.findViewById(R.id.dialogButtonOK);
ok.setOnClickListener(new OnClickListener(){
public void onClick(View v) {
db.open();
db.delete(idt[position]);
db.close();
dl.dismiss(); // در این قسمت از کد وقتی حذف یک آیتم صورت می گیرد لیست با فراخوانی رفرش مقدار جدید را می گیرد و مورد حذف شده در لیست وجود ندارد
[color=#800000]refresh()[/color];
}
});
Button no=(Button)dl.findViewById(R.id.dialogButtonNO);
no.setOnClickListener(new OnClickListener(){
public void onClick(View v) {
dl.dismiss();
}
});
dl.show();
}
});