如何将 PreferenceFragment 绑定到后端?
How to bind PreferenceFragment to back end?
是否可以在用户更改 PreferenceFragment 上的设置时发送请求?我不需要 SharedPreferences 功能,我只需要将 PreferenceFragment 与后端同步。
因为它有注册监听器的方法:registerOnSharedPreferenceChangeListener(),
你可以通过实现 SharedPreferences.OnSharedPreferenceChangeListener 接口并注册首选项来监听变化,比如:
@Override
public void onResume() {
super.onResume();
getPreferenceManager().getSharedPreferences().registerOnSharedPreferenceChangeListener(this);
}</p>
<p>@Override
public void onPause() {
getPreferenceManager().getSharedPreferences().unregisterOnSharedPreferenceChangeListener(this);
super.onPause();
}</p>
<p>@Override
public void onSharedPreferenceChanged(SharedPreferences prefs, String key) {
// here you can implement back end pushes
// <a href="http://square.github.io/retrofit/" rel="nofollow">http://square.github.io/retrofit/</a> is a good choice
}
</pre>
是否可以在用户更改 PreferenceFragment 上的设置时发送请求?我不需要 SharedPreferences 功能,我只需要将 PreferenceFragment 与后端同步。
因为它有注册监听器的方法:registerOnSharedPreferenceChangeListener(), 你可以通过实现 SharedPreferences.OnSharedPreferenceChangeListener 接口并注册首选项来监听变化,比如:
@Override
public void onResume() {
super.onResume();
getPreferenceManager().getSharedPreferences().registerOnSharedPreferenceChangeListener(this);
}</p>
<p>@Override
public void onPause() {
getPreferenceManager().getSharedPreferences().unregisterOnSharedPreferenceChangeListener(this);
super.onPause();
}</p>
<p>@Override
public void onSharedPreferenceChanged(SharedPreferences prefs, String key) {
// here you can implement back end pushes
// <a href="http://square.github.io/retrofit/" rel="nofollow">http://square.github.io/retrofit/</a> is a good choice
}
</pre>