2011-08-22 2 views
17

ToggleButton 상태에 액세스 할 수 있어야합니다. ToggleButton의 특정 상태에 대한 메서드를 만드는 방법은 없습니다.처리기를 통해 ToggleButton의 상태 가져 오기

ToggleButton syncSwitch = (ToggleButton)findViewById(R.id.toggleButton1); 
syncSwitch.setOnClickListener(new OnClickListener(){ 
    @Override 
    public void onClick(View view){ 
     Toast.makeText(getApplicationContext(), "Click!", Toast.LENGTH_SHORT).show(); 
    } 
}); 

지금 내가 필요한 모든 핸들러에게 ToggleButton의 상태를 알 수 있습니다 부울 방법의 몇 가지 유형입니다 : 내가 지금까지 어디에 있어요 그래서 여기에있다.

+0

syncSwitch.isChecked() 도움이 안 되었습니까? – ruhalde

+0

Nikolay의 대답에 대한 내 코멘트를 참조하십시오 – nkcmr

답변

34

'특정 주에 대한 메소드 만들기'란 무엇을 의미합니까? isChecked()을 사용하여 상태를 가져올 수 있습니다.

+0

오케이, 그 이상한. 당신 * * 맞아하지만 ToggleButton 워드 프로세서를 위아래로 봤는데 나는 그것을 보지 못했다. – nkcmr

+2

다른 클래스에서 상속되기 때문에 메서드가 숨겨진 경우가 있습니다. 어쨌든 실제로 문서가 실제로 안됐다. isChecked()는 android.widget.CompoundButton에 속해있다. – ruhalde

+0

나는 그것이 끔찍하다고 말할만큼 멀리 가지 않을 것이다. '상속 된 메소드'링크를 클릭하기 만하면 목록에 매우 쉽게 '확인 가능한'인터페이스가 있습니다. 세부 정보는 기본적으로 숨겨져 있지만 UI 위젯의 상속 계층이 상당히 깊기 때문에 세부 정보가 기능입니다. –

8

는 또한이 도움이

ToggleButton toggle = (ToggleButton) findViewById(R.id.toggle); 
toggle.setOnCheckedChangeListener(new OnCheckedChangeListener() { 

@Override 
    public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { 
       Toast.makeText(getApplicationContext(), 
         String.valueOf(buttonView.isChecked()), Toast.LENGTH_SHORT).show(); 
      } 
     }); 

희망처럼 togglebtn.setOnCheckedChangeListener 리스너를 사용하여 확인할 수 있습니다.

관련 문제