扫描二维码下载沐宇APP

沐宇

微信扫码使用沐宇小程序

沐宇

Android鐨刢heckboxpreference鎬庝箞浣跨敤

扬州沐宇科技
2023-07-14 20:55:03

瑕佷娇鐢ˋndroid鐨凜heckboxPreference锛屾偍闇€瑕佸湪鎮ㄧ殑XML甯冨眬鏂囦欢涓坊鍔犱竴涓狿referenceScreen锛屽苟鍦ㄥ叾涓坊鍔犱竴涓狢heckBoxPreference銆傜劧鍚庯紝鎮ㄥ彲浠ュ湪鎮ㄧ殑Activity涓娇鐢⊿haredPreferences鏉ヤ繚瀛樺拰妫€绱heckBoxPreference鐨勭姸鎬併€?/p>

浠ヤ笅鏄竴涓畝鍗曠殑绀轰緥锛?/p>

  1. 鍦╮es/xml鏂囦欢澶逛腑鍒涘缓涓€涓悕涓簆references.xml鐨刋ML鏂囦欢锛屽苟鍦ㄥ叾涓坊鍔犱互涓嬩唬鐮侊細
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
<CheckBoxPreference
android:key="checkbox_preference"
android:title="Checkbox Preference"
android:summary="This is a checkbox preference"
android:defaultValue="false"/>
</PreferenceScreen>
  1. 鍦ㄦ偍鐨凙ctivity涓紝娣诲姞浠ヤ笅浠g爜鏉ュ姞杞藉拰淇濆瓨CheckBoxPreference鐨勭姸鎬侊細
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 鍔犺浇PreferenceScreen
getFragmentManager().beginTransaction()
.replace(android.R.id.content, new MyPreferenceFragment())
.commit();
}
// 鍒涘缓涓€涓狿referenceFragment鏉ユ樉绀簆references.xml
public static class MyPreferenceFragment extends PreferenceFragment {
@Override
public void onCreate(final Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.preferences);
// 鑾峰彇CheckBoxPreference骞惰缃洃鍚櫒
CheckBoxPreference checkBoxPreference = (CheckBoxPreference) findPreference("checkbox_preference");
checkBoxPreference.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() {
@Override
public boolean onPreferenceChange(Preference preference, Object newValue) {
// 淇濆瓨CheckBoxPreference鐨勭姸鎬?/span>
SharedPreferences.Editor editor = PreferenceManager.getDefaultSharedPreferences(getActivity()).edit();
editor.putBoolean("checkbox_preference", (Boolean) newValue);
editor.apply();
return true;
}
});
}
}
}

鐜板湪锛屽綋鐢ㄦ埛鏇存敼CheckBoxPreference鐨勭姸鎬佹椂锛屾偍鍙互浣跨敤SharedPreferences鏉ユ绱㈠拰浣跨敤璇ョ姸鎬併€?/p>

甯屾湜杩欏彲浠ュ府鍔╂偍寮€濮嬩娇鐢ˋndroid鐨凜heckboxPreference锛?/p>

扫码添加客服微信