ورود

View Full Version : نحوه دریافت اطلاعات در آرایه



meysam jahedi
جمعه 15 اسفند 1393, 12:30 عصر
سلام
دستورات زیر مشخصات(مخاطبین) رو تو یه TextView نشون میده ، میخوام تو یه لیست ویو سفارشی با یه آداپتر نشون بدم ،

یعنی با آداپتر :

setListAdapter(new MyAdapter(this, phoneNumber2,email2, NAME));


حالا چطور تو دستورات زیر آرایه های (از نوع String)
phoneNumber2,email2, NAME رو قرار بدم و مقداردهی کنم؟


Cursor cursor = contentResolver.query(CONTENT_URI, null,null, null, null);
if (cursor.getCount() > 0) {

while (cursor.moveToNext()) {


String contact_id = cursor.getString(cursor.getColumnIndex( _ID ));
String name = cursor.getString(cursor.getColumnIndex( DISPLAY_NAME ));

int hasPhoneNumber = Integer.parseInt(cursor.getString(cursor.getColumn Index( HAS_PHONE_NUMBER )));

if (hasPhoneNumber > 0) {

output.append("\n First Name:" + name);

// Query and loop for every phone number of the contact
Cursor phoneCursor = contentResolver.query(PhoneCONTENT_URI, null, Phone_CONTACT_ID + " = ?", new String[] { contact_id }, null);

while (phoneCursor.moveToNext()) {
phoneNumber = phoneCursor.getString(phoneCursor.getColumnIndex(N UMBER));
output.append("\n Phone number:" + phoneNumber);

}

phoneCursor.close();

// Query and loop for every email of the contact
Cursor emailCursor = contentResolver.query(EmailCONTENT_URI, null, EmailCONTACT_ID+ " = ?", new String[] { contact_id }, null);

while (emailCursor.moveToNext()) {

email = emailCursor.getString(emailCursor.getColumnIndex(D ATA));

output.append("\nEmail:" + email);

}

emailCursor.close();
}

output.append("\n");


}

outputText.setText(output);

}

یه حلقه for جای اولین while میزارم و با i ، به آرایه ها مقدار میدم اما نمیشه .

meysam jahedi
جمعه 15 اسفند 1393, 17:26 عصر
............:لبخندساده:

tux-world
شنبه 16 اسفند 1393, 00:29 صبح
چیزی که شما میخایید یه آموزش کامل با تمام جزئیات هستش. حداقل یک ساعت طول میکشه آموزش دادنش. تو اینترنت simple listview و یا array adapter رو با مثالهاش بخونید متوجه میشید :لبخندساده:

meysam jahedi
شنبه 16 اسفند 1393, 09:09 صبح
چیزی که شما میخایید یه آموزش کامل با تمام جزئیات هستش. حداقل یک ساعت طول میکشه آموزش دادنش. تو اینترنت simple listview و یا array adapter رو با مثالهاش بخونید متوجه میشید :لبخندساده:

من مشکلی با آداپتر ندارم
تو دستورات بالا فقط میخوام خروجی رو تو آرایه بریزم که نمیتونم

آداپتر
setListAdapter(new MyAdapter(this, phoneNumber2,email2, NAME));

رو دارم .

ali_khodayar
شنبه 16 اسفند 1393, 10:39 صبح
سلام.
یه لیست یا آرایه تعریف کن و توی همون تابعی که داری مقدار ها رو از بانک میگیری

while (phoneCursor.moveToNext()) { phoneNumber = phoneCursor.getString(phoneCursor.getColumnIndex(N UMBER));
output.append("\n Phone number:" + phoneNumber);

}

به اینصورت عمل کن

while (phoneCursor.moveToNext()) { phoneNumber = phoneCursor.getString(phoneCursor.getColumnIndex(N UMBER));
output.append("\n Phone number:" + phoneNumber);
listPhone.add(phoneNumber )
}