بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]
پرسش و پاسخ

نحوه کار با custom listview برای نمایش عکس های متفاوت

مدیریت گفتگو
reza 9 سال پیش
آخرین تغییر: 9 سال پیش

سلام من یه  custom listview  ساختم اما چطوری می تونم باهاش ارتباط برقرار کنم و عکس بهش بدم که هر کدوم یه عکس متفاوت بگیره ؟! لطفا اگه نمونه کد دارید بفرستید . ممنون .

نظرات

Amir 9 سال پیش
خب باید توی Struct که برای آرایه ی لیست ویو ساختید یه فیلد بزارید که عکس (مسیر عکس) رو داخل خودش ذخیره کنه که اگه عکس ها داخل خود برنامه باشه نوع فیلد می تونه int باشه و اگه بخواید از حافظه عکس رو بگیرید می تونه String باشه که مسیرشه. حالا هر وقت که خواستید یه آیتم به آرایه ی لیست ویو اضافه کنید فیلد مسیر عکس رو هم باید پر کنید. و بقیشم که مشخصه به ImageView توی متد fill میگید که img.setImageResource(item.picture); توجه داشته باشید که اگه عکس ها حجمشون زیاد باشه ممکنه حافظه کم بیاد و به همین خاطر باید نمایش عکس ها رو بهینه کنید.
reza 9 سال پیش
ممنون . من عکس هامو دارم از اینترنت از دیتا بیس می خونم نمی خوام جایی ذخیره اشون کنم . و این که آیا لازمه اون imageview ای که تو. customlistview تعریف کردم رو تو اکتیویتیم با findviews by id تعریف کنم؟
Amir 9 سال پیش
نه لازم نیست توی اکتیویتی هم تعریفش کنید
reza 9 سال پیش
خب نمی شناستش بعد که !!!
reza 9 سال پیش
عکس ها می یاد اما چطوری اددش کنم تو لیست ویو ؟
Amir 9 سال پیش
شما باید توی کلاس ادپتر تعریفش کنید و توی کانستراکتور ViewHolder مقدار دهیش کنید. مگه آموزش لیست ویو رو ندیدید؟
reza 9 سال پیش
اسم ایمیج ام رو که توی لیست ویو سفارشی ام هست گذاشتم imageview 1 و بعد اینجوری fill می کنم اما فقط ردیف اولم عکس دار میشه !
reza 9 سال پیش
ImageView imageView1 = (ImageView) findViewById(R.id.imageView1); imageView1.setImageBitmap(response2);

پاسخ‌ها 4

مشاهده پاسخ صحیح
reza 9 سال پیش

 پاسخ صحیح
     ImageView imageView1 = (ImageView) findViewById(R.id.imageView1);
                                              
                                                imageView1.setImageBitmap(response2);

نظرات

reza 9 سال پیش
من سایر اطلاعاتم درست میاد مشکلم با عکس هست که نمی دونم چطوری اددش کنم تو لیست ویو
reza 9 سال پیش
نه متاسفانه مشکلم حل نشده
reza 9 سال پیش
نمی دونستم چطوری کار می کنه
sami 9 سال پیش

سلام.

کدای زیر رو توی متد fill بنویسید.

اگه عکسا توی پوشه drawable هستن : 

 
int imageResource = G.context.getResources().getIdentifier(item.image, "drawable", G.context.getPackageName());
imgListIcon.setImageResource(imageResource);

اگه عکسا توی پوشه mipmap هستن :

 
int imageResource = G.context.getResources().getIdentifier(item.image, "mipmap", G.context.getPackageName());
imgListIcon.setImageResource(imageResource);


نظرات

reza 9 سال پیش
من لیست ویوم این جوریه : و اضافه کردن مواردم هم با add هست !!! اما داخل add باید string باشه !!! که عکس string نیست ! باید چکار کنم !
reza 9 سال پیش

 listItem = new ArrayList<String>();
                               
                                ArrayAdapter<String> adapter = new ArrayAdapter<String>(VolimActivity.this, R.layout.custom_listview, R.id.textView1, listItem);
                              li1.setAdapter(adapter);
                adapter.notifyDataSetChanged();
                listItem.add("1");
 listItem.add("2");

نظرات

reza 9 سال پیش

   public ArrayList<String> listItem;

نظرات

reza 9 سال پیش
این listItem رو چطوری تعریف کنم که هم بشه عکس رو بخونه هم متن رو !!!

پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .