問題タブ [multiselectlistpreference]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - MultiSelectListPreference setEntries が表示されない
Android アプリを作成しようとしていMultiSelectListPreference
ますが、設定メニューにオプションが必要です。PreferenceActivity
これを処理するために を作成し、preferences.xml
ファイルも作成しましたが、プログラムでリスト要素を動的にロードできる必要があります。setEntries
これを行うにはandメソッドを使用する必要があることはわかっていますsetEntryValues
が、これらのメソッドを使用すると、例外はスローされず、タイトルと要約はMultiSelectListPreferenc
表示されますが、要素は表示されません。
入力に使用している配列が空ではないことを確認しentries
ましentryValues
た。それらを印刷することと、配列の結果getEntries()
とgetEntryValues()
取得後の結果を印刷することによってset
、これらは両方とも入力されるエントリリストを示しています。ただし、要素は表示されません。
私のpreferences.xml
コード:
私のAppSettings.java
コード:
ご協力いただきありがとうございます。
java - ArrayList を使用して MultiSelectedListPreference を作成する
を作成しようとしていますPreferenceActicity
。私の好みのタイプがMultiSelectedListPreference
.
インターネットで次のコードを見つけました。
問題は、実行時にエントリと entryValues を取得していることです。アプリの実行中に をビルドしてArrayList
います。問題は、どうすれば myArrayList
をエントリとして、またentryValues
?として設定できるかです。
リストの作成中に書き直す空の xml ファイルを作成する必要がありますか?
android - Android:オートコンプリートを使用した複数選択リストの設定?
アプリでユーザーが複数の都市を選択できるようにする必要があります。
そのため、ユーザーは「すべての都市」または「複数の都市」を選択できる必要があります。都市名をタップするとリストの上に表示され、上のリストをクリックすると元に戻ります。スケッチをデザインしたので、私が必要なものを理解できるようになります。
私が見つけた最も近い例は、Android チップ編集テキストです: https://github.com/klinker41/android-chips
しかし、それは連絡先で機能し、実際には非常に単純な選択リストにはコードが多すぎます。
何か案が?
ありがとうございました!
エラン。
java - Android MultiSelectListPreference で少なくとも 1 つのアイテムが選択されている
私はインターネットで何時間も検索しましたが、これまでのところ実質的なものは何も見つかりませんでした. 私がやりたいのは、複数選択の設定ビューです。これは、最後のアイテムを無効にし、それがもう単独ではない場合は再度有効にします。
私はこれまで、スーパークラスのフォースを使用して、そこにあるプライベート変数を読み取り、独自のonPrepareDialogBuilder(AlertDialog.Builder builder)
. OnMultiChoiceClickListener
アイテムが1つしか残っていない瞬間に、飛び込む独自の構成です。ここでの問題は、プライベート変数の強制読み取りの悪い習慣を使用していることと、チェックボックス項目を取得する方法とそれを無効にする方法がこれまでのところわからないことです。しかし、Android SDK をさらに詳しく調べると、この問題は解決すると思います。
最後に、何も機能しないOnPreferenceChangeListener
場合は、ユーザーが選択したアイテムが 1 つ未満の場合にトーストを表示するために上書きを実行することで問題を解決します。しかし、使いやすさは高い価値があり、獲得する必要があり、多くの場合簡単ではありません。
どうも。
android - 最初にリストに表示されていない場合、MultiSelectListPreference チェックボックスがチェックされない (API 23)
配列リソース内のエントリ、値、およびデフォルト値を含む MultiSelectListPreference のみを持つ SettingsActivity を指定すると、Android がオンにする必要があることを認識していても、一部のチェックボックスがオンとして描画されません。チェックされていないアイテムをクリックすると、そのアイテムはチェックされていないままになります (Android は、チェックされているアイテムをチェック解除していると見なすため)。
ここで利用可能なプロジェクト: https://github.com/ImmersibleElf/MSLPBug
API 21 と 22 では正常に動作するようですが、23 では動作しません。これはビューのリサイクルのバグでしょうか? または、何が原因である可能性がありますか?
設定Activity.java
settings.xml
配列.xml
java - MultiSelectListPreference の defaultValues が機能しない
Android Studio でビルドしているプロジェクトがあります。コンパイルして正常に実行されるフラグメントを含む事前構築済みの設定画面を追加しました。私は MultiSelectListPreference を設定画面の 1 つに追加しました。ただし、Java または XML のどちらで追加しても、defaultValue は機能しません。これを行う方法に関する他の質問のスコアを読みました。私は方法を知っています。私の質問は、意図したとおりに機能しない原因は何ですか?
pref_general.xml
PreferenceActivity.java
配列.xml
values
有効な Set を含むデバッグが表示され、設定の保存が正常に機能するため、すべてが正常に機能していることがわかります。これは、lp.setEntryValues(values)
それが機能しvalues
、適切にフォーマットされた Set であることを意味します。ただし、lp.setDefaultValue(values)
効果はありません。チェックボックスは、最初の実行時にはすべてオフになっています。私の目標は、それらすべてをデフォルトで選択することです。
はい、Clean and rerun 'app'
テスト間で Android Studio の [実行] メニューのコマンドを使用しました。さらに、デバイスでアプリのキャッシュを手動でクリアしました。
[編集]
コメントに提案があるので、次の変更も試しました。
java - Android MultiSelectListPreference がクラッシュする
MultiSelectListPreference
Androidプロジェクトで使用しようとしています。
ご覧のとおり、すべての設定を定義しました。
でstrings.xml
:
エラーメッセージが表示されます:
原因: java.lang.ClassCastException: java.lang.String は android.app.SharedPreferencesImpl.getStringSet(SharedPreferencesImpl.java:232) で java.util.Set にキャストできません
私は何を間違えましたか?