問題タブ [edittextpreference]
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.
android - ユーザーが検証する前にEditTextPreference値を確認するにはどうすればよいですか?
現在、アプリケーションに設定があり、ユーザーは2〜10個の数値を入力するように求められます。
この機能はパワーユーザーとベータテスターのみが利用でき、一般公開はできないため、CSV値を入力できるようにすることにしました。
したがって、私のEditTextPreferenceには、「1; 20; 30」と入力するユーザーもいれば、「1; 10; 10; 10; 10; 10;10;10」と入力するユーザーもいます。
その後、私のコードでは、これらの値を分割して配列を作成し、コードを実行しています。私はそれがあまり専門的ではないことを認めなければなりませんが、それはうまくいきます!
主な問題は、ユーザーが文字列を書き込んでいるときに文字列の有効性を確認したいということです。
それを達成する方法を知っている人はいますか?
android - カスタム ダイアログで null 検証を使用した EditTextPreference のカスタム レイアウト
アプリに PreferenceActivity があり、EditTextPreference のカスタム レイアウトを指定したいと考えています。私はandroid:layout
属性を持つxmlファイルでそれを行います。すべて問題ありません。レイアウトは変更されていますが、フィールドの値を変更できません。コードはエラーなしで実行されています。デバッグでは、値が変更されていることがわかりますが、視覚的には変更がありません。私は電話をかけようとしましview.invalidate()
たonContentChanged()
が、何も変わりませんでした。ID はすべて問題なく、例外はスローされていません。だから私にはわかりません。よろしくお願いします。
これが私のpreferences_file_types.xmlのコードです:
これが私の PreferenceActivity クラスのコードです:
android - 開いている設定画面で EditTextPreference を開く方法
環境設定画面を開いたときに EditTextPreference を開きたい。私は試します
これどうやってするの?
android - EditTextPreference値を取得します
EditTextPreferenceを作成しましたが、他のアクティビティから値を取得したいと思います。私はたくさんのことを試みてきましたが、それを機能させることができません。この値はどこに保存されますか?どうすれば取得できますか?
編集:アクティビティではなく、別のアクティビティから値を取得したいPreferences
。
settings.xml
Settings.java
(別のアクティビティでこれを行う方法)
android - 無効な入力が入力されたときに EditTestPreference を再表示する方法は?
Android 2.1をターゲットにしています。
EditTextPreference
ユーザーがいくつかの値を入力できるようにします。ユーザーが空の値を入力した場合、ユーザーにエラー メッセージを表示した後、編集設定を再表示したいと考えています。
エラー メッセージは表示できますが、再度表示することはできませんEditTextPreference
。
私のコードは次のようになります。
android - PreferenceActivity、EditTextPreference でパスワードの長さを隠す
私の行動:
EditTextPreferenceをクリックします
パスワードが記載されたウィンドウが表示されます
すべて問題ありませんが、以前に入力したパスワードの長さを確認できます
パスワードの長さを隠すにはどうすればよいですか?
android - EditTextPreferenceは、Androidをロードしたときに常にデフォルトの概要を表示します
EditTextPreferenceアイテムを含む設定フラグメントがあります。プリファレンスフラグメントをロードするたびに、表示される値はデフォルト値であり、sharedPreferencesに保存されている値の1つです。メニューが読み込まれたときに、これらの編集テキストを常にsharedPreferencesからのテキストを表示するようにするにはどうすればよいですか?以下を使用して、フラグメントからsharedPreferencesにアクセスしてみました。
しかし、任意のキーにアクセスしようとすると、デフォルトのテキストが返されます。テキスト入力はsharedPreferencesに保存されています。これは、editTextをクリックすると、事前に設定したテキストがすでに存在しているため、要約だけにデフォルトのテキストが表示されるためです。よろしくお願いします。私はおそらく非常に単純なものを見逃しているでしょう。
設定画面のxml
フラグメントが作成されるアクションpublicclassPrefsActivity extends Activity {
prefsフラグメント自体
android - SharedPreferences の検証
私はアンドロイド開発に少し慣れていません。アプリに、一連の EditTextPreference とチェックボックスの設定を含む設定画面があります。edittextpreference への入力の検証に興味があります。Android を使用してこれを行う方法がないように思われるので、edittextpreference を拡張するクラスを開発しました。
たとえば、有効な範囲が 0 から 1 までしかないテキスト設定があるとします。テキスト設定は任意の数値を受け入れますが、設定する前にこれを検証する必要があります。
setText メソッドをオーバーライドし、実際に値を設定する前に検証を試みています。SetText はテキスト文字列のみを渡します。検証しようとしているものをどのように知ることができますか? どうすればその情報を入手できますか? 言い換えれば、クラスを再利用してすべてのテキスト設定を検証したいのですが、設定自体に、それがどのタイプであるか、またはその範囲が何であるかを教えてもらいたいのです。
android - AndroidでEditTextPreference値を空白にしないようにする簡単な方法はありますか?
私はその数をEditTextPreference
0から9までの数でなければなりません。他の文字を防ぐことはできますが、バックスペースを防ぐことはできません。Backspace +Okay=空の値。空の値は、値が取得されて数値に解析されるとクラッシュすることを意味します。
現時点では、プリファレンスがいつ変更されるか、特定のキーがあり長さがないかどうかを確認し、変更される場合は「0」で再保存します。これを行うためのより簡単な組み込みの方法はありますか?「requirevalue」プロパティ、または少なくともdigits
、変更された設定を取得できるようにするなど、より自動化されたものですか?(数字が「0123456789」の場合、空であってはなりません)。
これまでの設定アクティビティでは、次のようになっています。
(セットサマリーが機能していません-^。プロパティを確認できると、android:digits="0123456789"
プロパティを確認できるので、空白にする必要のあるキーを入力する必要がありません。)
または、メインアクティビティで、すべての数値設定を文字列に入れ、文字列をチェックし、適切でない場合は0に設定してから、各文字列を解析できます。私がそれらをより多く使用するにつれて、これは自動的ではなく、あまり魅力的ではないと感じます。
(これはまだ最善の方法かもしれません...?)
android - EditTextPreference と画面の回転
この場所を検索しましたが、役立つ答えが見つかりませんでした: PreferenceFragment で動作する設定アクティビティがあります。設定の 1 つに EditTextPreference があります。それはその価値をうまく保存します。ただし、画面を回転させると、EditTextPreference が消えて、行った変更が失われます。
これは、Activity が新しく作成されるためです。とった。
入力されたデータを取得するために onSaveInstanceState を使用できることはわかっていますが、EditTextPreference を再び表示させる方法は明確ではありません (実際、そのためのコーディングは追加していません。すべて xml 定義を介して行われています)。どうぞよろしくお願いいたします。