2014-08-28 2 views
0

안녕하세요 여러분은 4 개의 토글 버튼이 포함 된 레이아웃을 가지고 있습니다. 첫 번째 버튼은 항상 활성화되어 있거나 켜져 있습니다. 두 번째 버튼을 활성화하면 나머지 세 개의 스위치가 자동으로 꺼지게되거나 자동으로 비활성화됩니다. 다른 나머지 두 개. 한 번만 스위치 하나만 ​​켜야합니다.ToggleButtons in android

버튼을 true 또는 false로 설정하여 setchecked (부울 플래그) 토글 버튼을 사용하여이 기능을 만들었지 만 버튼이 상태를 동적으로 변경하지는 않습니다.

public void setChoicesStates(boolean nameToggle,boolean surnameToggle,boolean emailToggle,boolean groupToggle) 
    { 
     mNameToggle.setChecked(nameToggle); 
     mSurnameToggle.setChecked(surnameToggle); 
     mEmailToggle.setChecked(emailToggle); 
     mGroupToggle.setChecked(groupToggle); 
    } 

후 토글 버튼에 할당 된 수신기를 변화 체크에 참 또는 거짓 상태로 설정 .. 방법이다. 미리 도움을 주셔서 감사합니다.

+0

"buttonToToggle.toggle();" –

답변

1

이 시도 ...

ToggleButton tb1, tb2, tb3, tb4; 
tb1 = (ToggleButton) findViewById(R.id.toggleButton1); 
     tb2 = (ToggleButton) findViewById(R.id.toggleButton2); 
     tb3 = (ToggleButton) findViewById(R.id.toggleButton3); 
     tb4 = (ToggleButton) findViewById(R.id.toggleButton4); 
     tb1.setOnClickListener(new OnClickListener() { 

      @Override 
      public void onClick(View v) { 
       // TODO Auto-generated method stub 
       if (tb1.isChecked()) { 
        tb2.setChecked(false); 
        tb3.setChecked(false); 
        tb4.setChecked(false); 

       } 
      } 
     }); 
     tb2.setOnClickListener(new OnClickListener() { 

      @Override 
      public void onClick(View v) { 
       // TODO Auto-generated method stub 
       if (tb2.isChecked()) { 
        tb1.setChecked(false); 
        tb3.setChecked(false); 
        tb4.setChecked(false); 

       } 
      } 
     }); 
     tb3.setOnClickListener(new OnClickListener() { 

      @Override 
      public void onClick(View v) { 
       // TODO Auto-generated method stub 
       if (tb3.isChecked()) { 
        tb1.setChecked(false); 
        tb2.setChecked(false); 
        tb4.setChecked(false); 

       } 
      } 
     }); 
     tb4.setOnClickListener(new OnClickListener() { 

      @Override 
      public void onClick(View v) { 
       // TODO Auto-generated method stub 
       if (tb4.isChecked()) { 
        tb2.setChecked(false); 
        tb3.setChecked(false); 
        tb1.setChecked(false); 

       } 
      } 
     }); 
당신이 테스트 할 수 있습니다
+0

수표를 사용하는 청취자를 사용했습니다. 내 방법이 효과적이었습니다. 많이 감사합니다. 올바른 장소에서 방법을 호출해야했습니다. 감사합니다.하지만 이것도 시험해 볼 것입니다. 보다 나은. – AndroidMech