16e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam/* 26e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam * Copyright (C) 2015 The Android Open Source Project 36e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam * 46e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam * Licensed under the Apache License, Version 2.0 (the "License"); 56e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam * you may not use this file except in compliance with the License. 66e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam * You may obtain a copy of the License at 76e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam * 86e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam * http://www.apache.org/licenses/LICENSE-2.0 96e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam * 106e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam * Unless required by applicable law or agreed to in writing, software 116e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam * distributed under the License is distributed on an "AS IS" BASIS, 126e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 136e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam * See the License for the specific language governing permissions and 146e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam * limitations under the License. 156e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam */ 166e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 17d60659421446329c7a7af2a009a51413d5388254Maurice Lampackage com.android.setupwizardlib.items; 186e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 19d60659421446329c7a7af2a009a51413d5388254Maurice Lamimport static org.junit.Assert.assertEquals; 202614260933341bd4ea7bb37a3435f46f82cacef7Maurice Lamimport static org.junit.Assert.assertFalse; 212614260933341bd4ea7bb37a3435f46f82cacef7Maurice Lamimport static org.junit.Assert.assertTrue; 22d60659421446329c7a7af2a009a51413d5388254Maurice Lamimport static org.robolectric.RuntimeEnvironment.application; 232614260933341bd4ea7bb37a3435f46f82cacef7Maurice Lam 24d60659421446329c7a7af2a009a51413d5388254Maurice Lamimport android.annotation.TargetApi; 25d60659421446329c7a7af2a009a51413d5388254Maurice Lamimport android.os.Build.VERSION_CODES; 266e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lamimport android.support.v7.widget.SwitchCompat; 27d60659421446329c7a7af2a009a51413d5388254Maurice Lamimport android.view.LayoutInflater; 286e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lamimport android.view.View; 296e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lamimport android.view.ViewGroup; 306e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lamimport android.widget.FrameLayout; 316e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lamimport android.widget.ImageView; 326e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lamimport android.widget.TextView; 336e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 34d60659421446329c7a7af2a009a51413d5388254Maurice Lamimport com.android.setupwizardlib.BuildConfig; 356e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lamimport com.android.setupwizardlib.R; 36d60659421446329c7a7af2a009a51413d5388254Maurice Lamimport com.android.setupwizardlib.robolectric.SuwLibRobolectricTestRunner; 376e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 382614260933341bd4ea7bb37a3435f46f82cacef7Maurice Lamimport org.junit.Test; 392614260933341bd4ea7bb37a3435f46f82cacef7Maurice Lamimport org.junit.runner.RunWith; 40d60659421446329c7a7af2a009a51413d5388254Maurice Lamimport org.robolectric.annotation.Config; 412614260933341bd4ea7bb37a3435f46f82cacef7Maurice Lam 42d60659421446329c7a7af2a009a51413d5388254Maurice Lam@RunWith(SuwLibRobolectricTestRunner.class) 43d60659421446329c7a7af2a009a51413d5388254Maurice Lam@Config(constants = BuildConfig.class, sdk = { Config.OLDEST_SDK, Config.NEWEST_SDK }) 442614260933341bd4ea7bb37a3435f46f82cacef7Maurice Lampublic class SwitchItemTest { 456e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 466e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam private SwitchCompat mSwitch; 476e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 482614260933341bd4ea7bb37a3435f46f82cacef7Maurice Lam @Test 496e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam public void testChecked() { 506e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam SwitchItem item = new SwitchItem(); 516e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam item.setTitle("TestTitle"); 526e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam item.setSummary("TestSummary"); 536e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam View view = createLayout(); 546e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 556e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam item.setChecked(true); 566e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 576e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam item.onBindView(view); 586e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 596e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam assertTrue("Switch should be checked", mSwitch.isChecked()); 606e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam } 616e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 622614260933341bd4ea7bb37a3435f46f82cacef7Maurice Lam @Test 636e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam public void testNotChecked() { 646e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam SwitchItem item = new SwitchItem(); 656e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam item.setTitle("TestTitle"); 666e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam item.setSummary("TestSummary"); 676e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam View view = createLayout(); 686e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 696e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam item.setChecked(false); 706e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 716e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam item.onBindView(view); 726e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 736e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam assertFalse("Switch should be unchecked", mSwitch.isChecked()); 746e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam } 756e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 762614260933341bd4ea7bb37a3435f46f82cacef7Maurice Lam @Test 776e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam public void testListener() { 786e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam SwitchItem item = new SwitchItem(); 796e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam item.setTitle("TestTitle"); 806e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam item.setSummary("TestSummary"); 816e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam View view = createLayout(); 826e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 836e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam item.setChecked(true); 846e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 856e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam final TestOnCheckedChangeListener listener = new TestOnCheckedChangeListener(); 866e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam item.setOnCheckedChangeListener(listener); 876e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 886e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam item.onBindView(view); 896e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 906e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam assertTrue("Switch should be checked", mSwitch.isChecked()); 916e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam mSwitch.setChecked(false); 926e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 93d60659421446329c7a7af2a009a51413d5388254Maurice Lam assertTrue("Listener should be called", listener.mCalled); 94d60659421446329c7a7af2a009a51413d5388254Maurice Lam assertFalse("Listener should not be checked", listener.mChecked); 956e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 966e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam mSwitch.setChecked(true); 976e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 98d60659421446329c7a7af2a009a51413d5388254Maurice Lam assertTrue("Listener should be called", listener.mCalled); 99d60659421446329c7a7af2a009a51413d5388254Maurice Lam assertTrue("Listener should be checked", listener.mChecked); 1006e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam } 1016e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 1022614260933341bd4ea7bb37a3435f46f82cacef7Maurice Lam @Test 103b3d973f58b14b66c20d1032518dfd1969b2932feMaurice Lam public void testRebind() { 104b3d973f58b14b66c20d1032518dfd1969b2932feMaurice Lam SwitchItem item1 = new SwitchItem(); 105b3d973f58b14b66c20d1032518dfd1969b2932feMaurice Lam item1.setTitle("TestTitle1"); 106b3d973f58b14b66c20d1032518dfd1969b2932feMaurice Lam item1.setSummary("TestSummary1"); 107b3d973f58b14b66c20d1032518dfd1969b2932feMaurice Lam item1.setChecked(false); 108b3d973f58b14b66c20d1032518dfd1969b2932feMaurice Lam 109b3d973f58b14b66c20d1032518dfd1969b2932feMaurice Lam SwitchItem item2 = new SwitchItem(); 110b3d973f58b14b66c20d1032518dfd1969b2932feMaurice Lam item2.setTitle("TestTitle2"); 111b3d973f58b14b66c20d1032518dfd1969b2932feMaurice Lam item2.setSummary("TestSummary2"); 112b3d973f58b14b66c20d1032518dfd1969b2932feMaurice Lam item2.setChecked(true); 113b3d973f58b14b66c20d1032518dfd1969b2932feMaurice Lam 114b3d973f58b14b66c20d1032518dfd1969b2932feMaurice Lam View view = createLayout(); 115b3d973f58b14b66c20d1032518dfd1969b2932feMaurice Lam 116b3d973f58b14b66c20d1032518dfd1969b2932feMaurice Lam item1.onBindView(view); 117b3d973f58b14b66c20d1032518dfd1969b2932feMaurice Lam item2.onBindView(view); 118b3d973f58b14b66c20d1032518dfd1969b2932feMaurice Lam 119b3d973f58b14b66c20d1032518dfd1969b2932feMaurice Lam // Switch should be bound to item2, and therefore checked 120b3d973f58b14b66c20d1032518dfd1969b2932feMaurice Lam assertTrue("Switch should be checked", mSwitch.isChecked()); 121b3d973f58b14b66c20d1032518dfd1969b2932feMaurice Lam 122b3d973f58b14b66c20d1032518dfd1969b2932feMaurice Lam // Switching the switch to false should change the checked state of item 2 only 123b3d973f58b14b66c20d1032518dfd1969b2932feMaurice Lam mSwitch.setChecked(false); 124b3d973f58b14b66c20d1032518dfd1969b2932feMaurice Lam assertFalse("Item1 should still be unchecked", item1.isChecked()); 125b3d973f58b14b66c20d1032518dfd1969b2932feMaurice Lam assertFalse("Item2 should not be checked", item2.isChecked()); 126b3d973f58b14b66c20d1032518dfd1969b2932feMaurice Lam 127b3d973f58b14b66c20d1032518dfd1969b2932feMaurice Lam // Switching the switch to true should change the checked state of item 2 only 128b3d973f58b14b66c20d1032518dfd1969b2932feMaurice Lam mSwitch.setChecked(true); 129b3d973f58b14b66c20d1032518dfd1969b2932feMaurice Lam assertFalse("Item1 should still be unchecked", item1.isChecked()); 130b3d973f58b14b66c20d1032518dfd1969b2932feMaurice Lam assertTrue("Item2 should be checked", item2.isChecked()); 131b3d973f58b14b66c20d1032518dfd1969b2932feMaurice Lam } 132b3d973f58b14b66c20d1032518dfd1969b2932feMaurice Lam 1332614260933341bd4ea7bb37a3435f46f82cacef7Maurice Lam @Test 1346e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam public void testListenerSetChecked() { 1356e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam // Check that calling setChecked on the item will also call the listener. 1366e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 1376e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam SwitchItem item = new SwitchItem(); 1386e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam item.setTitle("TestTitle"); 1396e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam item.setSummary("TestSummary"); 1406e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam View view = createLayout(); 1416e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 1426e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam item.setChecked(true); 1436e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 1446e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam final TestOnCheckedChangeListener listener = new TestOnCheckedChangeListener(); 1456e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam item.setOnCheckedChangeListener(listener); 1466e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 1476e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam item.onBindView(view); 1486e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 1496e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam assertTrue("Switch should be checked", mSwitch.isChecked()); 1506e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam item.setChecked(false); 1516e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 152d60659421446329c7a7af2a009a51413d5388254Maurice Lam assertTrue("Listener should be called", listener.mCalled); 153d60659421446329c7a7af2a009a51413d5388254Maurice Lam assertFalse("Listener should not be checked", listener.mChecked); 1546e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 1556e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam item.setChecked(true); 1566e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 157d60659421446329c7a7af2a009a51413d5388254Maurice Lam assertTrue("Listener should be called", listener.mCalled); 158d60659421446329c7a7af2a009a51413d5388254Maurice Lam assertTrue("Listener should be checked", listener.mChecked); 1596e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam } 1606e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 1612614260933341bd4ea7bb37a3435f46f82cacef7Maurice Lam @Test 1626e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam public void testToggle() { 1636e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam SwitchItem item = new SwitchItem(); 1646e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam item.setTitle("TestTitle"); 1656e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam item.setSummary("TestSummary"); 1666e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam View view = createLayout(); 1676e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 1686e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam item.setChecked(true); 1696e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam item.onBindView(view); 1706e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 1716e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam assertTrue("Switch should be checked", mSwitch.isChecked()); 1726e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 1736e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam item.toggle(view); 1746e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 1756e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam assertFalse("Switch should be unchecked", mSwitch.isChecked()); 1766e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam } 1776e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 178d60659421446329c7a7af2a009a51413d5388254Maurice Lam @TargetApi(VERSION_CODES.JELLY_BEAN_MR1) 179d60659421446329c7a7af2a009a51413d5388254Maurice Lam @Config(minSdk = VERSION_CODES.JELLY_BEAN_MR1) 180d60659421446329c7a7af2a009a51413d5388254Maurice Lam @Test 181d60659421446329c7a7af2a009a51413d5388254Maurice Lam public void testAccessibility() { 182d60659421446329c7a7af2a009a51413d5388254Maurice Lam SwitchItem item = new SwitchItem(); 183d60659421446329c7a7af2a009a51413d5388254Maurice Lam item.setTitle("TestTitle"); 184d60659421446329c7a7af2a009a51413d5388254Maurice Lam item.setSummary("TestSummary"); 185d60659421446329c7a7af2a009a51413d5388254Maurice Lam 186d60659421446329c7a7af2a009a51413d5388254Maurice Lam View view = LayoutInflater.from(application).inflate(R.layout.suw_items_switch, null); 187d60659421446329c7a7af2a009a51413d5388254Maurice Lam item.onBindView(view); 188d60659421446329c7a7af2a009a51413d5388254Maurice Lam 189d60659421446329c7a7af2a009a51413d5388254Maurice Lam final View titleView = view.findViewById(R.id.suw_items_title); 190d60659421446329c7a7af2a009a51413d5388254Maurice Lam assertEquals("Title view should label for switch", 191d60659421446329c7a7af2a009a51413d5388254Maurice Lam R.id.suw_items_switch, titleView.getLabelFor()); 192d60659421446329c7a7af2a009a51413d5388254Maurice Lam } 193d60659421446329c7a7af2a009a51413d5388254Maurice Lam 1946e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam private ViewGroup createLayout() { 195d60659421446329c7a7af2a009a51413d5388254Maurice Lam ViewGroup root = new FrameLayout(application); 1966e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 197d60659421446329c7a7af2a009a51413d5388254Maurice Lam TextView titleView = new TextView(application); 1986e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam titleView.setId(R.id.suw_items_title); 1996e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam root.addView(titleView); 2006e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 201d60659421446329c7a7af2a009a51413d5388254Maurice Lam TextView summaryView = new TextView(application); 2026e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam summaryView.setId(R.id.suw_items_summary); 2036e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam root.addView(summaryView); 2046e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 205d60659421446329c7a7af2a009a51413d5388254Maurice Lam FrameLayout iconContainer = new FrameLayout(application); 2066e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam iconContainer.setId(R.id.suw_items_icon_container); 2076e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam root.addView(iconContainer); 2086e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 209d60659421446329c7a7af2a009a51413d5388254Maurice Lam ImageView iconView = new ImageView(application); 2106e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam iconView.setId(R.id.suw_items_icon); 2116e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam iconContainer.addView(iconView); 2126e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 213d60659421446329c7a7af2a009a51413d5388254Maurice Lam mSwitch = new SwitchCompat(application); 2146e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam mSwitch.setId(R.id.suw_items_switch); 2156e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam root.addView(mSwitch); 2166e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 2176e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam return root; 2186e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam } 2196e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 2206e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam private static class TestOnCheckedChangeListener implements SwitchItem.OnCheckedChangeListener { 2216e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 222d60659421446329c7a7af2a009a51413d5388254Maurice Lam boolean mCalled = false; 223d60659421446329c7a7af2a009a51413d5388254Maurice Lam boolean mChecked = false; 2246e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam 2256e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam @Override 2266e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam public void onCheckedChange(SwitchItem item, boolean isChecked) { 227d60659421446329c7a7af2a009a51413d5388254Maurice Lam mCalled = true; 228d60659421446329c7a7af2a009a51413d5388254Maurice Lam mChecked = isChecked; 2296e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam } 2306e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam } 2316e55f30c31f1ac3b35d60f306cf6cef084b1a845Maurice Lam} 232