タグ付けされた質問 「android-preferences」

30
Android設定の現在の値を設定概要に表示するにはどうすればよいですか?
これは非常に頻繁に発生する必要があります。 ユーザーがAndroidアプリで設定を編集しているときに、現在設定されている設定の値をPreference概要で確認できるようにしたいと考えています。 例:「古いメッセージを破棄する」の設定で、メッセージのクリーンアップが必要になるまでの日数を指定している場合。ではPreferenceActivity私が見て、ユーザが欲しいです: 「古いメッセージを破棄する」 <-タイトル 「x日後にメッセージをクリーンアップする」 <- 要約。ここで、xは現在の設定値です 追加のクレジット:これを再利用可能にして、タイプに関係なくすべての設定に簡単に適用できるようにします(これにより、最小限のコーディングでEditTextPreference、ListPreferenceなどで機能します)。

8
SharedPreferences.onSharedPreferenceChangeListenerが一貫して呼び出されない
私はこのような設定変更リスナーを(onCreate()私のメインアクティビティの)に登録しています: SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this); prefs.registerOnSharedPreferenceChangeListener( new SharedPreferences.OnSharedPreferenceChangeListener() { public void onSharedPreferenceChanged( SharedPreferences prefs, String key) { System.out.println(key); } }); 問題は、リスナーが常に呼び出されるとは限らないことです。設定が変更された最初の数回は機能し、アプリをアンインストールして再インストールするまで呼び出されなくなります。アプリケーションを再起動しても、問題は解決しないようです。 私は同じ問題を報告するメーリングリストのスレッドを見つけましたが、誰も実際には彼に答えていません。何が悪いのですか?


10
PreferenceScreenにボタンを追加する方法は?
私はAndroid開発にかなり慣れていないので、プリファレンスに出会いました。それを見つけPreferenceScreenてログイン機能を作成したいと思いました。唯一の問題は、「ログイン」ボタンをに追加する方法がわからないことPreferenceScreenです。 これが私のPreferenceScreen姿です: <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"> ... <PreferenceScreen android:title="@string/login" android:key="Login"> <EditTextPreference android:persistent="true" android:title="@string/username" android:key="Username"></EditTextPreference> <EditTextPreference android:title="@string/password" android:persistent="true" android:password="true" android:key="Password"></EditTextPreference> </PreferenceScreen> ... </PreferenceScreen> ボタンは2つEditTextPreferenceののすぐ下にある必要があります。 この問題の簡単な解決策はありますか?私が見つけた1つの解決策は、sub PreferenceScreens を使用しているため機能していませんでした。 更新: 私はこの方法でボタンを追加できることを理解しました: <PreferenceScreen android:title="@string/login" android:key="Login"> <EditTextPreference android:persistent="true" android:title="@string/username" android:key="Username"></EditTextPreference> <EditTextPreference android:title="@string/password" android:persistent="true" android:password="true" android:key="Password"></EditTextPreference> <Preference android:layout="@layout/loginButtons" android:key="loginButtons"></Preference> </PreferenceScreen> レイアウトファイル(loginButtons.xml)は次のようになります。 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_height="wrap_content" android:layout_width="fill_parent" …

5
Android設定onclickイベント
私のPreferences.xmlには、次のような設定要素があります。 <Preference android:title="About" /> onClickイベントを割り当てたいので、ユーザーがそれをクリックすると、新しいIntentブラウザを開くことができます。ボタンの場合と同じようにしてみましたが、うまくいかないようです。



6
Androidでのアプリケーションのアンインストール中に共有設定を削除する方法
それを介してユーザー名やパスワードなどのログイン詳細を保存するAndroidアプリケーションがありますSharedPreferencesがSharedPreferences、アプリケーションのアンインストール中に使用したものをすべて削除する必要があります。どうやってするの? SavePreferences("one ", ""); SavePreferences("two", ""); LoadPreferences(); private void SavePreferences(String key, String value){ sharedPreferences = getSharedPreferences("TEST", MODE_PRIVATE); SharedPreferences.Editor editor = sharedPreferences.edit(); editor.putString(key, value); editor.commit(); } private void LoadPreferences(){ sharedPreferences = getSharedPreferences("TEST", MODE_PRIVATE); String strSavedMem1 = sharedPreferences.getString("MEM1", ""); String strSavedMem2 = sharedPreferences.getString("MEM2", ""); } SharedPreferencesアプリケーションのアンインストール時にこれを削除したい。

8
PreferenceFragment内の設定変更をリッスンする方法は?
ここで説明するように、PreferenceFragmentをサブクラス化して、アクティビティ内に表示しています。このドキュメントでは、ここで設定の変更をリッスンする方法について説明していますが、PreferenceActivityをサブクラス化する場合のみです。私はそれをしていないので、どのようにプリファレンスの変更をリッスンしますか? 私はPreferenceFragmentにOnSharedPreferenceChangeListenerを実装しようとしましたが、機能していないようです(呼び出されていないようですonSharedPreferenceChanged)。 これはこれまでのところ私のコードです: SettingsActivity.java public class SettingsActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // Display the fragment as the main content. getFragmentManager().beginTransaction().replace(android.R.id.content, new SettingsFragment()).commit(); } } SettingsFragment.java public class SettingsFragment extends PreferenceFragment implements OnSharedPreferenceChangeListener { public static final String KEY_PREF_EXERCISES = "pref_number_of_exercises"; @Override public void onCreate(Bundle …

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.