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

لیست ویو

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

ببخشید دوستان شاید سوال خیلی مبتدی باشه یا اصلا امکان پذیر نباشه

ببخشید دیگه من خیلی مبتدی هستم

خب حالا سوال: من یه لیست ویو دارم که می خوام روی هر کدام از آیتم هاش که کلیک میشه یه دیالوگ باز کنه که با قبلی فرق کنه

یا بره به یک صفحه ی که با صفحات دیگر آیتم ها فرق کنه

یعنی همشون یه به یک صفحه نرن یا یک دیالوگ رو باز نکنند

مرسی دوستان

نظرات

احسان منصوری 11 سال پیش
شما میتونی توی متد fill شرط بذاری که اگه فلان آیتم کلیک شد، فلان کار رو انجام بده. این فلان آیتم رو توسط position مشخص می کنند. اوکی؟
rezaqas 11 سال پیش
مرسی از نظر دادنتون امتحان میکنم ببینم چی میشه
rezaqas 11 سال پیش
دوستان اگه میشه در این باره یکم بیشتر توضیح بدین
احسان منصوری 11 سال پیش
امتحان کردین که سریع نظر دادین بیشتر راهنمایی کنید؟ ببین عزیز جان، مثلا لیست ویوی شما 10 تا آیتم داره. مثلا میخوای بگی اگه روی آیتم اول کلیک شد، یه پیغام نمایش بده. اگه آیتم دوم کلیک شد بره به یه اکتیویتی دیگه. اگه روی آیتم سوم کلیک شد یه دیالوگ نمایش بده. درست؟ خب یه if یا یه سوییچ بنویس که position آیتم رو چک کنه. اگه position، یک بود، toast چاپ کنه. اگه position، دو بود، intent بنویس که بره اکتیویتی دیگه و اگه position، سه بود، یه دیالوگ نمایش بده. از این ساده تر توضیح بدم دیگه باید کد رو برات بنویسم:)
rezaqas 11 سال پیش
من از آقا احسان متشکرم که پیگیر هستن ولی من نمی دونم که این کد هارو چجوری بنویسم
احسان منصوری 11 سال پیش
خواهش میکنم. یعنی شما نمیتونین if ساده بنویسید؟ الان کدشو مینویسم برات
آریا 11 سال پیش
سلام رضا جان . من هم تو همین زمینه مشکل داشتم یعنی تا همینجا آموزش بیشتر نرسیدم بخونم فصل 10 آموزش هستم . با توضیحات آقا احسان اینجوری نوشتم جواب داد . البته فکر کنم آقا احسان راه کوتاهتر و بهتری دارن اگه راهنمایی کنن (کدش بنویسن) ممنون میشم layoutRoot.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { if (item.Title.toString().equals("Title 1")) { Intent intent = new Intent(G.currentActivity, ActivitySecond.class); G.currentActivity.startActivity(intent); } if (item.Title.toString().equals("Title 2")) { Toast.makeText(G.currentActivity, "This Is Unit 2", Toast.LENGTH_SHORT).show(); } });
rezaqas 11 سال پیش
آقا مرسی دم همتون گرم ببخشید که زیاد زحمتتون دادم.درست شد

پاسخ‌ها 2

احسان منصوری 11 سال پیش

شما توی اداپتر لیست ویوت یه متد داری به نام fill. درسته؟

خب شما اگه بخوای مشخص کنی که اگه روی آیتمی کلیک شد فلان کار رو انجام بده، توی متد fill کد onClickListenerش رو مینویسی دیگه.

الان بیا توی رویداد کلیک آیتم یه شرط بذار که position رو چک کنه. مثل کد زیر:

btnTest.setOnClickListener(new View.OnClickListener){
@Override
public void onClick(View v){
if(position == 0){
//کد رفتن به اکتیویتی دیکه
}else if(position == 1){
//کد نمایش دیالوگ
}
}
});

سخت بود؟:)

نظرات

آریا 11 سال پیش

 

 layoutRoot.setOnClickListener(new OnClickListener() {

 

                @Override

                public void onClick(View arg0) {

 

                    

                    if (item.Title.toString().equals("Title 1")) {

                        Intent intent = new Intent(G.currentActivity, ActivitySecond.class);

                        G.currentActivity.startActivity(intent);

                    }

                    if (item.Title.toString().equals("Title 2")) {

                        Toast.makeText(G.currentActivity, "This Is Unit 2", Toast.LENGTH_SHORT).show();     

                }

            });

نظرات


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