من با استفاده از پروژه لیست ویو استاد یه لیست ویو درست کردم. قراره با باز شدن اکتیویتی در onCreate لیست ویو تمام پیامک های کاربران را نمایش دهد. اما برای پیامک های خیلی زیاد لیست ویو پس از تاخیر چند ثانیه ای پر می شود و در این زمان نیز برنامه فریز می شود و پس از آن داده ها لود می شود.
لطفا کمک کنید که چطور باید لیست ویو پر شود که این مشکل پیش نیاید.
این هم کد:
adapter = new AdapterNote(SampleApplication.payamak);
lstContent.setAdapter(adapter);
getSMSContacts(this.getContentResolver());
public void getSMSContacts(ContentResolver cr) {
Uri inboxUri = Uri.parse("content://sms/inbox");
Cursor smsha = cr.query(inboxUri, null, null, null, null);
String body = null;
String number = null;
String date = null;
String pid = null;
SampleApplication.payamak.clear();
while (smsha.moveToNext()) {
try {
body = smsha.getString(smsha.getColumnIndexOrThrow("body" )).toString();
date = smsha.getString(smsha.getColumnIndexOrThrow("date" )).toString();
number = smsha.getString(smsha.getColumnIndexOrThrow("addre ss")).toString();
pid = getContactName(getApplicationContext(), number);
////////////////////////////
StructNote note = new StructNote();
note.title = number;
note.description = body;
note.name = pid;
note.date = mydate;
note.done = false;
////////////////////////////
SampleApplication.notes.add(note);
}
catch (Exception e) {}
}
smsha.close();
}