이 섹션에서는 ToggleButton 위젯을 사용 하 여 두 상태를 전환 하는 데 특별히 사용 되는 단추를 만듭니다.In this section, you'll create a button used specifically for toggling between two states, using the ToggleButton widget. 이 위젯은 함께 사용할 수 없는 두 개의 간단한 상태 (예: "on" 및 "off")가 있는 경우 라디오 단추 대신 사용할 수 있습니다.This widget is an excellent alternative to radio buttons if you have two simple states that are mutually exclusive ("on" and "off", for example). Android 4.0 (API 수준 14)에서는 Switch이라고 하는 설정/해제 단추에 대 한 대안을 제공 합니다.Android 4.0 (API level 14) introduced an alternative to the toggle button known as a Switch.

ToggleButton 의 예제는 이미지의 왼쪽 쌍에 표시 되는 반면 이미지의 오른쪽 쌍은 스위치의 예를 보여 줍니다.An example of a ToggleButton can be seen in the left hand pair of images, while the right hand pair of images presents an example of a Switch:

On 및 off 상태의 스위치 및 ToggleButtons 예

응용 프로그램에서 사용 하는 컨트롤은 스타일의 문제입니다.Which control an application uses is a matter of style. 두 위젯은 기능적으로 동일 합니다.Both widgets are functionally equivalent.

Resources/layout/Main. axml 파일을 열고 ToggleButton 요소 ( LinearLayout내)를 추가 합니다.Open the Resources/layout/Main.axml file and add the ToggleButton element (inside the LinearLayout):

상태가 변경 될 때 작업을 수행 하려면 다음 코드를의 끝에 추가 OnCreate()To do something when the state is changed, add the following code to the end of the OnCreate() 방법이method:

ToggleButton togglebutton = FindViewById<ToggleButton>(Resource.Id.togglebutton);

togglebutton.Click += (o, e) => {
    // Perform action on clicks
    if (togglebutton.Checked)
        Toast.MakeText(this, "Checked", ToastLength.Short).Show ();
        Toast.MakeText(this, "Not checked", ToastLength.Short).Show ();

그러면 레이아웃에서 ToggleButton 요소가 캡처되고 단추를 클릭할 때 수행할 동작을 정의 하는 Click 이벤트가 처리 됩니다.This captures the ToggleButton element from the layout, and handles the Click event, which defines the action to perform when the button is clicked. 이 예제에서 메서드는 단추의 새 상태를 확인 한 다음 현재 상태를 나타내는 Toast 메시지를 표시 합니다.In this example, the method checks the new state of the button, then shows a Toast message that indicates the current state.

ToggleButton 는 checked와 unchecked 사이에 자신의 상태 변경을 처리 하므로 사용자에 게 요청 하기만 하면 됩니다.Notice that the ToggleButton handles its own state change between checked and unchecked, so you just ask which it is.

애플리케이션을 실행합니다.Run the application.

저장 된 CheckBoxPreference를 로드 하는 경우와 같이 사용자가 직접 상태를 변경 해야 하는 경우 Checked 를 사용 합니다.If you need to change the state yourself (such as when loading a saved CheckBoxPreference), use the Checked 속성 setter 또는 Toggle()property setter or Toggle() 메서드를 재정의합니다.method.