آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

انتخاب تمامی آیتم های لیست ویو

sara  12 سال پیش  12 سال پیش
0 0

من یه لیست ویو دارم که حاوی checkbox و textview hsj و  اولین آیتم اون قرار کار CheckALL  رو انجام بده  میشه لطفا من رو برای انجام این کار راهنمایی کنید 

متشکرم

 برای این سوال 3 پاسخ وجود دارد.
پاسخ به سوال 
sadeghbarout  12 سال پیش
0 0

کل اطلاعات لیست ویو شما داخل یه آرایه است دیگه درسته؟

حالا مثلا شما میخواید همه checkbox ها تیک بخورن یا به عبارتی مقدارشون true بشه. برای این کار شما کافیه با یه حلقه، تمام اون مقادیر آرایه رو true یا 1 یا هرچیز دیگه ای که برای true شدن checkbox ها تعریف کردید ، بکنید.

و در آخر هم دستور notifyDataSetChanged رو برای رفرش کردن لیست صدا بزنید

0 0
خوب true کردن تمام مقادیر را باید تو Onklick چک باکس بنوبسم من اول آرایه یه آیتم به نام selectall گذاشتم که فکر کنم کار اشتباهی کردم باید چک باکس select ALL رو به هدر لیست ویو اضافه می کردم یا اینکه تو onclick چک باکس با شرط اینکه اگر ایندکس صفر بود همه رو true کنم به نظرتون درسته (12 سال پیش)
0 0
آره دقیقا. ولی منطقی تر همونه که دکمه رو به بالای لیست توی header منتقل کنید (12 سال پیش)
پاسخ به سوال 
sara  12 سال پیش
0 0

من بالای لیست ویو یه چک باکس گذاشتم برای selectALL و در Onclick اون کد زیر رو نوشتم :

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

 chkselct.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View view) {
                boolean isChecked = chkselect.isChecked();
                for (int i = 0; i < lstContent.getChildCount(); i++) {
                    CheckBox cb = (CheckBox) lstContent.getChildAt(i).findViewById(R.id.chkDone);
                    cb.setChecked(isChecked);
                }
            }

        });
پاسخ به سوال 
sadeghbarout  12 سال پیش
+1 0

خوشم میاد چیزی که نوشتی دقیقا بر اساس جواب قبلیم بود.

من که گفتم باید آرایه ای که باهاش لیست رو پر کردی تغییر بدی و در آخر یه notiifyDataSetChanged صدا بزنی نه اینکه مستقیم چکباکس ها رو تیک بزنی

مثلا اگه آرایه ای داری به نام myArray که از نوع Struct ساخته شده و چک باکس ها رو با فیلد check پر میکنی:

 chkselct.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View view) {
                boolean isChecked = chkselect.isChecked();
                for (MyStruct struct : myArray) {
                    struct.check=isChecked ;
                }
            }

        });
0 0
myArray چه شکلی تعریف شده ؟؟؟؟؟؟؟؟ (12 سال پیش)
0 0
لیستت رو با چه آرایه ای پر کردی؟؟؟؟؟؟؟؟ (12 سال پیش)
0 0
لیستم با یه چی از نوع ArrayAdapter پر شده !!! (مثل لیست ویو استاد) (12 سال پیش)
0 0
منظور صادق اینه که همین arrayAdapter شما از چه آرایه ای مقادیر رو میگیره و توی listView میریزه؟ الان مثلا این myArray یه آرایه هست که فرضا 500 تا رکرورد از DB گرفته و تو خودش ذخیره کرده، بعد arrayAdapter میاد این مقادیرو از myArray میگیره و توی listView میریزه(واسه نشون دادن توی لیست ویو adapt میکنه.). حالا کاری که شما باید بکنید اینه که مقدار checkBox رو از توی myArray تغییر بدید. (12 سال پیش)
0 0
متشکرم ... اگر باعث رنجش شدم میبخشید!!! (12 سال پیش)
0 0
این انجمن جای همین سوال پرسیدن و پاسخ دادنه، مطمئنا اگه کسی قرار باشه از پاسخ دادن برنجه پس پاسخ نمیده، من که خودم سعی میکنم تا جایی که بلدم به سوالات پاسخ بدم چون باعث افزایش اطلاعات خودمم میشه، مطمئنا صادق جان هم توی پاسخ دادن چیزی رو از کسی دریغ نمیکنه همینطور اعضای دیگه انجمن، پس شما هم بدون نگرانی سوالاتون رو بپرسید. (12 سال پیش)
0 0
من از شما و صادق و همه دوستان که وقتتون رو میزارین متشکرم (12 سال پیش)
0 0
نه رنجشی نیست. ولی اگه بیشتر دقت کنی خیلی سریعتر به جواب سوالت میرسی . خوشحالم که مشکلت حل شد ;) (12 سال پیش)

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