blob: 71438c9b9bf091f68c850d26544de78f36e0dfcd [file] [log] [blame]
The Android Open Source Project9066cfe2009-03-03 19:31:44 -08001/*
2 * Copyright (C) 2006 The Android Open Source Project
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
17package android.widget;
18
19import android.content.Context;
20import android.util.AttributeSet;
Svetoslav Ganov76502592011-07-29 10:44:59 -070021import android.view.accessibility.AccessibilityEvent;
Svetoslav Ganov8a78fd42012-01-17 14:36:46 -080022import android.view.accessibility.AccessibilityNodeInfo;
Svetoslav Ganov76502592011-07-29 10:44:59 -070023
The Android Open Source Project9066cfe2009-03-03 19:31:44 -080024
25/**
26 * <p>
27 * A checkbox is a specific type of two-states button that can be either
28 * checked or unchecked. A example usage of a checkbox inside your activity
29 * would be the following:
30 * </p>
31 *
32 * <pre class="prettyprint">
33 * public class MyActivity extends Activity {
34 * protected void onCreate(Bundle icicle) {
35 * super.onCreate(icicle);
36 *
37 * setContentView(R.layout.content_layout_id);
38 *
39 * final CheckBox checkBox = (CheckBox) findViewById(R.id.checkbox_id);
40 * if (checkBox.isChecked()) {
41 * checkBox.setChecked(false);
42 * }
43 * }
44 * }
45 * </pre>
Scott Main41ec6532010-08-19 16:57:07 -070046 *
Scott Main4c359b72012-07-24 15:51:27 -070047 * <p>See the <a href="{@docRoot}guide/topics/ui/controls/checkbox.html">Checkboxes</a>
48 * guide.</p>
The Android Open Source Project9066cfe2009-03-03 19:31:44 -080049 *
50 * <p><strong>XML attributes</strong></p>
51 * <p>
52 * See {@link android.R.styleable#CompoundButton CompoundButton Attributes},
53 * {@link android.R.styleable#Button Button Attributes},
54 * {@link android.R.styleable#TextView TextView Attributes},
55 * {@link android.R.styleable#View View Attributes}
56 * </p>
57 */
Philip Milneab104ba2013-04-19 03:53:38 +000058public class CheckBox extends CompoundButton {
The Android Open Source Project9066cfe2009-03-03 19:31:44 -080059 public CheckBox(Context context) {
60 this(context, null);
61 }
62
63 public CheckBox(Context context, AttributeSet attrs) {
64 this(context, attrs, com.android.internal.R.attr.checkboxStyle);
65 }
66
Alan Viverette617feb92013-09-09 18:09:13 -070067 public CheckBox(Context context, AttributeSet attrs, int defStyleAttr) {
68 this(context, attrs, defStyleAttr, 0);
69 }
70
71 public CheckBox(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) {
72 super(context, attrs, defStyleAttr, defStyleRes);
The Android Open Source Project9066cfe2009-03-03 19:31:44 -080073 }
Svetoslav Ganov76502592011-07-29 10:44:59 -070074
75 @Override
Svetoslav Ganov8a78fd42012-01-17 14:36:46 -080076 public void onInitializeAccessibilityEvent(AccessibilityEvent event) {
77 super.onInitializeAccessibilityEvent(event);
78 event.setClassName(CheckBox.class.getName());
79 }
80
81 @Override
82 public void onInitializeAccessibilityNodeInfo(AccessibilityNodeInfo info) {
83 super.onInitializeAccessibilityNodeInfo(info);
84 info.setClassName(CheckBox.class.getName());
85 }
The Android Open Source Project9066cfe2009-03-03 19:31:44 -080086}