2012-03-29 30 views
0

我有一個可擴展的列表視圖,我有父母和孩子的複選框。要求是,如果我檢查父項的複選框,然後孩子們也應該得到selected.Here的複選框代碼複選框在可擴展的列表視圖

holder.editCheck 
      .setOnCheckedChangeListener(new OnCheckedChangeListener() { 

       @Override 
       public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { 
      } 

可以在任何一個可以幫助我解決這個

回答

0

選擇一個你想要的:

第一個會將父複選框的狀態應用於子項。

parent_checkbox.setOnClickListener(new OnClickListener() { 
     public void onClick(View v) 
     { 
      children_checkbox.setChecked(parent_checkbox.isChecked()); 
     } 
    }); 

或者:如果被選中

第二隻適用狀態。 IE瀏覽器。如果父母未被檢查,則孩子保持其以前的狀態。

parent_checkbox.setOnClickListener(new OnClickListener() { 
     public void onClick(View v) 
     { 
      if (parent_checkbo.isChecked()) children_checkbox.setChecked(true); 
     } 
    }); 
+0

我無法訪問getgroupView中的children_checkbox。在getgroupView中,我只能訪問parentcheckbox並在getchildView中有權訪問children_checkbox – 2012-03-29 14:44:21

+0

在子活動中,在onCreate方法中添加 'CheckBox parent =(CheckBox)getParent()。findViewById(R.id.your_parent_check_box) ; CheckBox child =(CheckBox)findViewById(R.id.your_child_check_box);如果(parent.isChecked())child.setChecked(true);' – Manitoba 2012-03-29 14:56:44

+0

孩子是不是一個活動,我正在處理可擴展的列表視圖 – 2012-03-29 14:59:14