如何在另一个CheckBox的每个项目中放置不同的CheckBox?

时间:2018-07-28 07:15:05

标签: java android android-checkbox

我想在另一个checkBox项目中创建一个checkBox,出现在textView中的最终项目是第二个项目的整体选择。我正确地做了第​​一个checkBox并可以正常工作,但是我想将第二个放在第一个checkBox里面:第一个setmultiplechoiceclicklistner()中有30多个项目,因此我不能使用开关盒0,1,2,... <string-array name="shopingItems"> <item>a</item> <item>b</item> <item>c</item> <item>d</item> <item>e</item> </string-array> <string-array name="a"> <item>aa</item> <item>ba</item> <item>ca</item> <item>da</item> <item>ea</item> </string-array> <string-array name="b"> <item>ba</item> <item>bb</item> <item>bc</item> <item>bd</item> <item>be</item> </string-array> 非常愚蠢。

我该怎么做?

 public class CreateAddActivity extends AppCompatActivity {
 private TextView TV;
 private Button btn;
 String[] listItems;
 boolean[] checkedItems;
 ArrayList<Integer> mUserItems = new ArrayList<>();


 @Override
 protected void onCreate(Bundle savedInstanceState) {
 super.onCreate(savedInstanceState);
 setContentView(R.layout.activity_create_add);
 TV = findViewById(R.id.tvItemSelected);
 btn = findViewById(R.id.btnOrder);

 listItems = getResources().getStringArray(R.array.shopingItems);
 checkedItems = new boolean[listItems.length];



 btn.setOnClickListener(new View.OnClickListener() {
      @Override
      public void onClick(View v) {
      AlertDialog.Builder mBuilder =
          new AlertDialog.Builder(CreateAddActivity.this);
      mBuilder.setTitle("Items available in a shop");
      mBuilder.setMultiChoiceItems(listItems, checkedItems, new 
      DialogInterface.OnMultiChoiceClickListener() {
           @Override
           public void onClick(DialogInterface dialog, int position, boolean 
           isChecked) {
           if (isChecked) {
                mUserItems.add(position);

           } else if (mUserItems.contains(position)) {
                // Else, if the item is already in the array, remove it
                mUserItems.remove(Integer.valueOf(position));
           }
           }
      });


      mBuilder.setCancelable(false);
      mBuilder.setPositiveButton("ok", new DialogInterface.OnClickListener() {
           @Override
           public void onClick(DialogInterface dialog, int position) {
           StringBuilder item = new StringBuilder();
           for (int i = 0; i < mUserItems.size(); i++) {
                item.append(listItems[mUserItems.get(i)]);
                if ( i != mUserItems.size() - 1 ) {

                item.append(",");//put coma if it is not the last item

                }//not the last item
           }
           //TV.setText(item.toString());

           }


      });
      mBuilder.setNegativeButton("Dismiss", new DialogInterface.OnClickListener() {
           @Override
           public void onClick(DialogInterface dialog, int which) {
           dialog.dismiss();
           }
      });
      mBuilder.setNeutralButton("clear", new DialogInterface.OnClickListener() {
           @Override
           public void onClick(DialogInterface dialog, int which) {
           for (int i = 0; i < checkedItems.length; i++) {
                checkedItems[i] = false;
                mUserItems.clear();
                TV.setText("");
           }
           }
      });
      AlertDialog mDialog = mBuilder.create();
      mDialog.show();

      }
 });


 }
  }

我的活动:

var values = [];
var count = 0;
$("#tblName").on("click", "tbody tr", function (event) {
   $(this).find("td").each(function () {
       values[count] = $(this).text();
       count++;
    });
});

0 个答案:

没有答案