1 package jp
.gr
.java_conf
.ofnhwx
.olib
.base
;
3 import android
.content
.SharedPreferences
;
4 import android
.content
.SharedPreferences
.OnSharedPreferenceChangeListener
;
5 import android
.os
.Bundle
;
6 import android
.preference
.CheckBoxPreference
;
7 import android
.preference
.Preference
;
8 import android
.preference
.PreferenceActivity
;
11 * {@link PreferenceActivity}のもと.
14 public abstract class BasePreferenceActivity
extends PreferenceActivity
{
16 OnSharedPreferenceChangeListener listener
= null;
19 protected void onCreate(Bundle savedInstanceState
) {
20 super.onCreate(savedInstanceState
);
21 if (this instanceof OnSharedPreferenceChangeListener
) {
22 listener
= (OnSharedPreferenceChangeListener
)this;
27 protected void onResume() {
29 if (listener
!= null) {
30 SharedPreferences preferences
= getPreferenceScreen().getSharedPreferences();
31 preferences
.registerOnSharedPreferenceChangeListener(listener
);
36 protected void onPause() {
38 if (listener
!= null) {
39 SharedPreferences preferences
= getPreferenceScreen().getSharedPreferences();
40 preferences
.unregisterOnSharedPreferenceChangeListener(listener
);
44 public void setChecked(int key
, boolean checked
) {
45 CheckBoxPreference preference
= findPreference(key
);
46 preference
.setChecked(checked
);
49 @SuppressWarnings("unchecked")
50 public <T
extends Preference
> T
findPreference(String key
) {
51 return (T
)super.findPreference(key
);
54 public <T
extends Preference
> T
findPreference(int key
) {
55 return findPreference(getString(key
));