PDA

View Full Version : چطور آی دی imageview با لمس کردن اون بگیرم؟؟!



mrtzxxx
شنبه 03 آبان 1393, 15:38 عصر
با سلام خدمت همه دوستان عزیز. من با برنامه نویسی به layout چند تا imageview اضافه کردم هر کدوم از اینها یک آی دی مخصوص به خودش رو داره . حالا میخوام وقتی کاربر روی یکی از این imageview ها رو لمس کنه آی دی اون رو برگردونه؟ هر چی گشتم چیز بدردبخوری پیدا نکردم لطفا اگه کسی چیزی میدونه کمک کنه کارم گیره. ممنون

shahin bahari
شنبه 03 آبان 1393, 16:07 عصر
توی override متد setOnClickListener به شما ویویی که کلیک شده رو بر می گردونه. کافیه بنویسید v.getID() تا ID اون رو بهتون بده.

mrtzxxx
شنبه 03 آبان 1393, 17:38 عصر
داداش دمت گرم . این ضرب المثل آب در کوزه و ما گرد جهان میگردیم اینجا صدق میکنه . من داشتم لقمه رو دور سرم میچرخوندم فکر میکردم خیلی پیچیدست. بازم دمت گرم خیلی دمت گرم :قلب:

mrtzxxx
شنبه 03 آبان 1393, 18:02 عصر
فقط یه موضوع دیگه چطوری میتونم این imageview که آی دی شو گرفتیم مثلا بشه resource رو تغییر داد؟؟؟؟!

shahin bahari
شنبه 03 آبان 1393, 20:08 عصر
((ImageView)findViewById(your_id).setImageResource (R.drawable.your_image);
منظور اینه؟!

mrtzxxx
شنبه 03 آبان 1393, 20:19 عصر
فرض کنید چند تا imageview داریم وقتی کاربر یکیشو لمس میکنه اون imageview رو میخوام حذف کنم یا عکس داخلشو عوض کنم که بالا مثال زدین برای تعویض عکس. برای حذفش چیکار کنم؟
این کد ایجاد imageview هستش:
ImageView img;
mainlay = (LinearLayout) findViewById(R.id.main);
img = new ImageView(Editor.this);
img.setId(Count);
mainlay.addView(img);
img.setImageResource(R.drawable.ic_launcher);
Count++;


وقتی با دستور mainlay.removeView(img); حذفش میکنم میاد آخرین imageview ایجاد شده رو حذف میکنه . چه طوری بنویسم که imageview رو حذف کن که ای دی اون برابر باشه با آی دی که از view.getid() میگرم؟؟؟؟!

shahin bahari
شنبه 03 آبان 1393, 22:57 عصر
احتمالا تو حلقه ای که id ها رو می گیرید یه مشکلی هست وگرنه منطقی نیست که ایتم اشتباه حذف کنه.
به هر حال وقتی ImageView رو ‍‍‍‍‍پیدا کردید با متد setVisibility اون رو تو صفحه مخفی کنید. خود من از این روش بیشتر استفاده میکنم.