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

چک باکس

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

من چهار تا چک باکس دارم که میخوام هر کدوم انتخاب شد، اون سه تا رو نشه انتخاب کرد.

مثل ردیو باتن

ولی نمیخوام از ردیوباتن استفاده کنم.

باید از چه کدی استفاده کنم؟

نظرات

alisherafat01 10 سال پیش
Radio group دقیقا برای همین ساخته شده ولی اگه اصرار دارید که از چک باکس استفاده کنید باید بگم که وضعیت چک بودن اونا رو باید خودتون دستی تغییر بدید ... اگه کدشو خواستی ببینی این لینک رو ببین D:
cyberchief 10 سال پیش
با تشکر درست شد

پاسخ‌ها 4

فرهاد 10 سال پیش

سلام

روی هر چک باکس که کلیک کردی اونای دیگه رو خط زیر رو براشون بنویس

checkBox.setClickable(false);

مثلا روی چک باکس یک کلیک شد

checkBox2.setClickable(false);

checkBox3.setClickable(false);

checkBox4.setClickable(false);

نظرات

cyberchief 10 سال پیش

این کد رو اضافه کردم، و درست شد

  private OnCheckedChangeListener listener = new OnCheckedChangeListener() {

                                                 public void onCheckedChanged(CompoundButton arg0, boolean isChecked) {
                                                     if (isChecked) {
                                                         switch (arg0.getId())
                                                         {
                                                             case R.id.chk1:
                                                                 c1.setChecked(true);
                                                                 c2.setChecked(false);
                                                                 c3.setChecked(false);
                                                                 c4.setChecked(false);
                                                                 break;
                                                             case R.id.chk2:
                                                                 c1.setChecked(false);
                                                                 c2.setChecked(true);
                                                                 c3.setChecked(false);
                                                                 c4.setChecked(false);
                                                                 break;
                                                             case R.id.chk3:
                                                                 c1.setChecked(false);
                                                                 c2.setChecked(false);
                                                                 c3.setChecked(true);
                                                                 c4.setChecked(false);
                                                                 break;
                                                             case R.id.chk4:
                                                                 c1.setChecked(false);
                                                                 c2.setChecked(false);
                                                                 c3.setChecked(false);
                                                                 c4.setChecked(true);
                                                                 break;

                                                         }
                                                     }
                                                 }
                                             };

 

نظرات

فرهاد 10 سال پیش

checkbox1.setOnClickListener(new OnClickListener() {

    @Override
    public void onClick(View arg0) {
        checkBox2.setClickable(false);
        checkBox3.setClickable(false);
        checkBox4.setClickable(false);
    }
});

checkbox2.setOnClickListener(new OnClickListener() {

    @Override
    public void onClick(View arg0) {
        checkBox1.setClickable(false);
        checkBox3.setClickable(false);
        checkBox4.setClickable(false);
    }
});

checkbox3.setOnClickListener(new OnClickListener() {

    @Override
    public void onClick(View arg0) {
        checkBox1.setClickable(false);
        checkBox2.setClickable(false);
        checkBox4.setClickable(false);
    }
});

checkbox4.setOnClickListener(new OnClickListener() {

    @Override
    public void onClick(View arg0) {
        checkBox1.setClickable(false);
        checkBox2.setClickable(false);
        checkBox3.setClickable(false);
    }
});

شما نیاز به دانش بیشتری برای برنامه نویسی دارید

موفق باشید

 

نظرات

فرهاد 10 سال پیش
البته onCheckedChanged هم میشه
Reza 10 سال پیش

سلام

به جای کد طولانی بالا و استفاده از switch از این کد استفاده کن :

 OnCheckedChangeListener listener = new OnCheckedChangeListener() {

@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
c1.setChecked(false);
c2.setChecked(false);
c3.setChecked(false);
c4.setChecked(false);
buttonView.setChecked(isChecked);
}
};

c1.setOnCheckedChangeListener(listener);
c2.setOnCheckedChangeListener(listener);
c3.setOnCheckedChangeListener(listener);
c3.setOnCheckedChangeListener(listener)

نظرات


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