View Full Version : نمایش چند ستون دیتابیس در یک ایتم لیست ویو
mohsen..f
سه شنبه 18 فروردین 1394, 22:46 عصر
سلام
دوستان من میخوام تو هر ایتم لیست ویو 4 عنوان (ستون) مختلف از دیتا بیس رو نشون بدم.
با کد زیر فقط اطلاعات یک ستون نشون داده میشه. لطفا راهنمایی کنید چه تغیراتی انجام بدم.
تو کد نویسی در حد اماتور هستم. پیشا پیش ممنون
data = new ArrayList<HashMap<String, String>>();
for (; c.moveToNext() ; ) {
HashMap<String, String> map = new HashMap<String, String>();
String id = c.getString(c.getColumnIndex("IdM"));
String tarikh = c.getString(c.getColumnIndex("Tarikh"));
String bedehkar = c.getString(c.getColumnIndex("Bedehkar"));
String bestankar = c.getString(c.getColumnIndex("Bestankar"));
map.put("name", id);
data.add(map);
}
adapter = new list_view(this, data);lst.setAdapter(adapter);
gilas1368
چهارشنبه 19 فروردین 1394, 08:11 صبح
map.put("name", id);
دوست خوبم
شما با کد بالا فقط ی آیتم ک اونم id هستش رو داخل hashmap میذارین و همون hashmap رو به adapter لیست ویو پاس میدید
برای داشتن اطلاعات بیشتر شما باید اول اون اطلاعات رو به hashmapاتون اضافه کنین
بعد بیاید با ی کلاس که از نوع BaseAdapter هست اطلاعات هر ردیف از hashmap رو با توجه به کلیدش بگیرد و توی ی textview نمایش بدید
mohsen..f
چهارشنبه 19 فروردین 1394, 08:33 صبح
ممنون بابت راهنماییتون. مشکل من همینه نمیدونم چطور اینکارو کنم؟ :ناراحت:
ali_khodayar
چهارشنبه 19 فروردین 1394, 08:59 صبح
اگر اشتباه نکنم همونطور که id رو به map اضافه کردی باید بقیه رو هم اضافه کنی.
map.put("tarikh", tarikh);
map.put("bedehkar", bedehkar);
.
.
.
mohsen..f
چهارشنبه 19 فروردین 1394, 11:07 صبح
نه متاسفانه اینجوری اضافه نمیشه.
من خودم با دستور زیر تونستم داده رو اضافه کنم. اما هر کدوم از اطلاعات تو ایتم جدا نشون داده میشه. مثلا تاریخ تو ایتم اول ، بدهکار تو ایتم دوم و بستانکار تو ایتم سوم نشون داده میشه.
من میخوام هر سه داده تاریخ و بدهکار و بستانکار تو یه ایتم نشون داده بشه
for (; c.moveToNext() ; ) { HashMap<String, String> map = new HashMap<String, String>();
HashMap<String, String> mapp = new HashMap<String, String>();
HashMap<String, String> mappp = new HashMap<String, String>();
String id = c.getString(c.getColumnIndex("IdM"));
String tarikh = c.getString(c.getColumnIndex("Tarikh"));
String bedehkar = c.getString(c.getColumnIndex("Bedehkar"));
String bestankar = c.getString(c.getColumnIndex("Bestankar"));
map.put("name", tarikh);
data.add(map);
mapp.put("name", bedehkar);
data.add(mapp);
mappp.put("name", bestankar);
data.add(mappp);
}
atpf67
چهارشنبه 19 فروردین 1394, 11:23 صبح
نه متاسفانه اینجوری اضافه نمیشه.
من خودم با دستور زیر تونستم داده رو اضافه کنم. اما هر کدوم از اطلاعات تو ایتم جدا نشون داده میشه. مثلا تاریخ تو ایتم اول ، بدهکار تو ایتم دوم و بستانکار تو ایتم سوم نشون داده میشه.
من میخوام هر سه داده تاریخ و بدهکار و بستانکار تو یه ایتم نشون داده بشه[/HTML]
سلام بزرگوار
در حالت عادی توی لیست ویو شما به ازی هر سطر فقط میتونید یک داده رو نمایش بدید، شما باید لیست ویوتون رو سفارشی کنید.
موفق باشید- یا علی
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.