<Switch android:id="@+id/switch_speak" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_vertical"/>
项目中用到这个组件时,想当然的做法是监听它的点击事件,然后设置手动调用setSelected(boolean isSelected)或setChecked(boolean isChecked).
这里有个坑,switch根本不需要我们手动去设置状态,正确作法是直接保存
mSwitchSpeak.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { //保存到SharedPreference mPref.put("speak", mSwitchSpeak.isChecked()); } });