Ashish Kumar
Ashish Kumar

Reputation: 13

checkbox not get checked according to list values in android

Sorry for my bad English,
I am individually getting array list value to the checkboxes. (Actually, these are the weekdays that are coming from the activity). but the problem is checkbox only set the first position value to checkbox. Please let me know what's wrong in my code.

Below is the Code Snippet

Let Say this is the list value:

[Monday, Tuesday, Sunday]

This is the class that i passing the list

for (int i = 0; i < myList.size(); i++) {

            switch (myList.get(i)){

                case "Monday":
                    cbMon.setChecked(true);
                    break;

                case "Tuesday" :
                    cbTue.setChecked(true);
                    break;

                case "Wednesday":
                    cbWed.setChecked(true);
                    break;

                case "Thursday":
                    cbThurs.setChecked(true);
                    break;

                case "Friday":
                    cbFri.setChecked(true);
                    break;

                case "Saturday":
                    cbSat.setChecked(true);
                    break;

                case "Sunday":
                    cbSun.setChecked(true);
                    break;

                default:

                    break;

            }

Upvotes: 0

Views: 66

Answers (3)

Test
Test

Reputation: 1

Try using OR (||) in your if() statement.

if(a==b  || a==c || b==c)
        {
            //Your action
        }

or Better use switch cases,

switch(position) {
  case 0:
    ...
    break;
  case 1:
    ...
    break;
  default:
    ...

}

Upvotes: 0

Black mamba
Black mamba

Reputation: 472

use this structure no need to do it in hardcode way

for (int i = 0; i < myList.size(); i++) {

        switch (myList.get(i)){

            case "Monday":
                cbMon.setChecked(true);
                break;

            case "Tuesday" :
                cbTue.setChecked(true);
                break;

            case "Sunday":
                cbSun.setChecked(true);
                break;

            default:break;

        }
    }

Upvotes: 1

tadev
tadev

Reputation: 224

You don't need

for (int i = 0; i < myList.size(); i++)

Upvotes: 0

Related Questions