android.content.SharedPreferences#OnSharedPreferenceChangeListener ( )源码实例Demo

下面列出了android.content.SharedPreferences#OnSharedPreferenceChangeListener ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: privatelocation   文件: FragmentSettings.java
@Override
public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
    super.onViewCreated(view, savedInstanceState);
    //set title
    getActivity().setTitle("Settings");

    //background color
    view.setBackgroundColor(getResources().getColor(R.color.white));

    sharedPreferenceChangeListener = new SharedPreferences.OnSharedPreferenceChangeListener() {
        @Override
        public void onSharedPreferenceChanged(SharedPreferences prefs, String key) {
            if(key.equals("RANDOMIZE_LOCATION") && cbRandomize.isChecked()) {
                Toast.makeText(context, getString(R.string.settings_randomize_toast), Toast.LENGTH_LONG).show();
            }
        }
    };
    sharedPreferences.registerOnSharedPreferenceChangeListener(sharedPreferenceChangeListener);
}
 
源代码2 项目: homeDash   文件: SettingsActivity.java
private void bindBoolPreferenceToHomeDashService(final int preferenceId, final BoolPreferenceAction boolPreferenceAction) {
    final String preferenceKey = getString(preferenceId);
    if(!onSharedPreferenceChangeListeners.containsKey(preferenceKey)) {
        SharedPreferences.OnSharedPreferenceChangeListener onSharedPreferenceChangeListener = new SharedPreferences.OnSharedPreferenceChangeListener() {
            @Override
            public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String s) {
                if (s.equals(preferenceKey)) {
                    boolean newValue = sharedPreferences.getBoolean(s, false);
                    if (mBound) {
                        boolPreferenceAction.action(newValue);
                    }
                }
                ;
            }
        };
        onSharedPreferenceChangeListeners.put(preferenceKey, onSharedPreferenceChangeListener);
        sharedPreferences.registerOnSharedPreferenceChangeListener(onSharedPreferenceChangeListener);
        onSharedPreferenceChangeListener.onSharedPreferenceChanged(sharedPreferences, getString(preferenceId));
    }
}
 
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    onSharedPreferenceChangeListener = new SharedPreferences.OnSharedPreferenceChangeListener() {
        @Override
        public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {
            if (key == "registrationID") {
                String value = sharedPreferences.getString(key, "");
                updateRegistrationID(value);
            } else if (key == "FCMtoken") {
                String value = sharedPreferences.getString(key, "");
                updatePushToken(value);
            }
        }
    };

    SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(this);
    sharedPreferences.registerOnSharedPreferenceChangeListener(onSharedPreferenceChangeListener);

    updateRegistrationID(sharedPreferences.getString("registrationID", ""));
    updatePushToken(sharedPreferences.getString("FCMtoken", ""));

    mainActivity = this;
    NotificationHelper.createChannelAndHandleNotifications(getApplicationContext());
}
 
/**
 * Unregisters SecureStorageChangeListener from SecureStorage
 *
 * @param context  Context is used internally
 * @param listener Provided listener with given behaviour from the developer that will be unregistered
 */
public static void unregisterOnSharedPreferenceChangeListener(@NonNull Context context,
                                                              @NonNull SharedPreferences.OnSharedPreferenceChangeListener listener) {
    Context applicationContext = context.getApplicationContext();
    SharedPreferences preferences = applicationContext
            .getSharedPreferences(KEY_SHARED_PREFERENCES_NAME, MODE_PRIVATE);
    preferences.unregisterOnSharedPreferenceChangeListener(listener);
}
 
/**
 * Registers SecureStorageChangeListener to listen to any changes in SecureStorage
 *
 * @param context  Context is used internally
 * @param listener Provided listener with given behaviour from the developer that will be registered
 */
public static void registerOnSharedPreferenceChangeListener(@NonNull Context context,
                                                            @NonNull SharedPreferences.OnSharedPreferenceChangeListener listener) {
    Context applicationContext = context.getApplicationContext();
    SharedPreferences preferences = applicationContext
            .getSharedPreferences(KEY_SHARED_PREFERENCES_NAME, MODE_PRIVATE);
    preferences.registerOnSharedPreferenceChangeListener(listener);
}
 
源代码6 项目: LaunchEnr   文件: BoardActivity.java
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    getPreferenceManager().setSharedPreferencesName(LauncherFiles.SHARED_PREFERENCES_KEY);
    addPreferencesFromResource(R.xml.board_preferences);

    mBoardTitlePreference = (EditTextPreference) findPreference(BoardUtils.BOARD_TITLE_KEY);

    setBoardTitlePreference();

    mListenerOptions = new SharedPreferences.OnSharedPreferenceChangeListener() {
        @Override
        public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {

            switch (key) {
                case BoardUtils.BOARD_TITLE_KEY:
                    updateBoardTitlePreferenceSummary();
                    break;
                case BoardUtils.CUSTOM_APP_KEY:
                    manageCustomAppPreference();
                    break;
            }
        }
    };

    mCustomAppPreference = findPreference(BoardUtils.CUSTOM_APP_PREF_KEY);
    manageCustomAppPreference();
    mCustomAppPreference.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
        @Override
        public boolean onPreferenceClick(Preference preference) {
            Intent intent = new Intent(getActivity(), MultiSelectRecyclerViewActivity.class);
            getActivity().startActivity(intent);
            return false;
        }
    });
}
 
public void registerPreferenceChangedListener(SharedPreferences.OnSharedPreferenceChangeListener value) {
    registerPreferenceChangedListener(_prefApp, value);
}
 
源代码8 项目: IdeaTrackerPlus   文件: TinyDB.java
/**
 * Unregister SharedPreferences change listener
 *
 * @param listener listener object of OnSharedPreferenceChangeListener to be unregistered
 */
public void unregisterOnSharedPreferenceChangeListener(
        SharedPreferences.OnSharedPreferenceChangeListener listener) {

    preferences.unregisterOnSharedPreferenceChangeListener(listener);
}
 
源代码9 项目: java-n-IDE-for-Android   文件: Pref.java
public void registerOnSharedPreferenceChangeListener(SharedPreferences.OnSharedPreferenceChangeListener listener) {
    synchronized (this) {
        mListeners.put(listener, mContent);
    }
}
 
源代码10 项目: Common   文件: AbstractPreference.java
public void registerOnSharePreferenceChangeListener(SharedPreferences.OnSharedPreferenceChangeListener listener) {
    mSettings.registerOnSharedPreferenceChangeListener(listener);
}
 
源代码11 项目: OmniList   文件: BasePreferences.java
public void setOnSharedPreferenceChangeListener(SharedPreferences.OnSharedPreferenceChangeListener listener) {
    mPreferences.registerOnSharedPreferenceChangeListener(listener);
}
 
源代码12 项目: OmniList   文件: UserUtil.java
public void setOnAccountKeeperChangeListener(SharedPreferences.OnSharedPreferenceChangeListener listener) {
    mPreferences.registerOnSharedPreferenceChangeListener(listener);
}
 
源代码13 项目: andOTP   文件: Settings.java
public void registerPreferenceChangeListener(SharedPreferences.OnSharedPreferenceChangeListener listener) {
    settings.registerOnSharedPreferenceChangeListener(listener);
}
 
源代码14 项目: ncalc   文件: CalculatorSetting.java
public void unregisterOnSharedPreferenceChangeListener(SharedPreferences.OnSharedPreferenceChangeListener
                                                               onSharedPreferenceChangeListener) {
    sharedPreferences.unregisterOnSharedPreferenceChangeListener(onSharedPreferenceChangeListener);
}
 
public void unregisterPreferenceChangedListener(SharedPreferences.OnSharedPreferenceChangeListener value) {
    unregisterPreferenceChangedListener(_prefApp, value);
}
 
源代码16 项目: DMusic   文件: AbstractPreference.java
public void unregisterOnSharePreferenceChangeListener(SharedPreferences.OnSharedPreferenceChangeListener listener) {
    mSettings.unregisterOnSharedPreferenceChangeListener(listener);
}
 
源代码17 项目: VinylMusicPlayer   文件: PreferenceUtil.java
public void unregisterOnSharedPreferenceChangedListener(SharedPreferences.OnSharedPreferenceChangeListener sharedPreferenceChangeListener) {
    mPreferences.unregisterOnSharedPreferenceChangeListener(sharedPreferenceChangeListener);
}
 
源代码18 项目: android-ponewheel   文件: SharedPreferencesUtil.java
public void registerListener(SharedPreferences.OnSharedPreferenceChangeListener listener) {
    androidSharedPreferences.registerOnSharedPreferenceChangeListener(listener);
}
 
源代码19 项目: android-ponewheel   文件: SharedPreferencesUtil.java
public void removeListener(SharedPreferences.OnSharedPreferenceChangeListener listener) {
    androidSharedPreferences.unregisterOnSharedPreferenceChangeListener(listener);
}
 
源代码20 项目: Gallery-example   文件: SettingsActivity.java
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    addPreferencesFromResource(R.xml.prefs);

    PreferenceScreen preferenceScreen = getPreferenceScreen();

    Preference hiddenFolders = findPreference("hiddenFolders");

    SQLiteDatabase hiddenFoldersDB = getActivity().openOrCreateDatabase("HIDDEN", MODE_PRIVATE, null);

    final ArrayList<String> mHiddenFolders = new ArrayList<>();

    Cursor cursor = hiddenFoldersDB.rawQuery("SELECT * FROM foldersList;", null);

    if (cursor != null && cursor.moveToFirst()) {

        while (!cursor.isAfterLast()) {

            mHiddenFolders.add(cursor.getString(cursor.getColumnIndex("folder")));
            cursor.moveToNext();
        }
        cursor.close();
    }


    if (mHiddenFolders.size() != 0) {

        preferenceScreen.addPreference(hiddenFolders);

        hiddenFolders.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
            @Override
            public boolean onPreferenceClick(Preference preference) {

                HiddenFoldersDialog.show(getActivity(), mHiddenFolders);

                return false;
            }
        });
    } else {
        preferenceScreen.removePreference(hiddenFolders);
    }


    mListenerOptions = new SharedPreferences.OnSharedPreferenceChangeListener() {
        @Override
        public void onSharedPreferenceChanged(SharedPreferences preftheme, String key) {

            if (key.equals(getResources().getString(R.string.pref_theme)) | key.equals(getResources().getString(R.string.pref_grid))) {

                restartApp(getActivity());
            }
        }
    };


}