[解決済み] AndroidのEditTextをgoogleが説明するようなエラーメッセージを表示するように設計する。
2022-04-21 22:05:14
質問
が必要です。
EditText
で、onErrorはこのようになります。
onErrorを呼び出すと、代わりに次のようになります。
注:このアプリはSDK 19(4.4.2)で動作しています。
最小SDKは1
setErrorのような、これを自動的に行うメソッドはないでしょうか。 それとも、私がそのためのコードを書かなければならないのでしょうか?
ありがとうございます。
解決方法は?
Googleが導入した
TextInputLayout
の一部として
design-support-library
.
基本的な例を以下に示します。
レイアウト
<android.support.design.widget.TextInputLayout
android:id="@+id/text_input_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:errorEnabled="true">
<android.support.design.widget.TextInputEditText
android:id="@+id/edit_text"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Enter your name" />
</android.support.design.widget.TextInputLayout>
注
を設定することで
app:errorEnabled="true"
の属性として
TextInputLayout
は、エラーが表示されるとサイズを変更しないので、基本的にスペースを塞ぐことになります。
コード
の下にErrorを表示させるために
EditText
を呼び出すだけです。
#setError
の上で
TextInputLayout
(子である
EditText
):
TextInputLayout til = (TextInputLayout) findViewById(R.id.text_input_layout);
til.setError("You need to enter a name");
結果
エラーを非表示にして色合いをリセットするには、単に
til.setError(null)
.
備考
を使用するために
TextInputLayout
を使用するには、以下を
build.gradle
の依存関係にあります。
dependencies {
compile 'com.android.support:design:25.1.0'
}
カスタムカラーを設定する
デフォルトでは
EditText
は赤色になります。もし別の色を表示する必要がある場合は、以下のコードを呼び出すと同時に
setError
.
editText.getBackground().setColorFilter(getResources().getColor(R.color.red_500_primary), PorterDuff.Mode.SRC_ATOP);
これを消去するには、単に
clearColorFilter
関数は、次のようになります。
editText.getBackground().clearColorFilter();
関連
-
[解決済み] AndroidのEditTextビューで複数行を許可しますか?
-
アプリケーションがメインスレッドで過剰に作業している可能性があります。
-
[解決済み] Androidでアクティビティ起動時にEditTextにフォーカスが当たらないようにする方法
-
[解決済み] EclipseのAndroidプラグインで "Debug certificate expired "エラーが発生する。
-
[解決済み] アプリケーションを終了することは嫌われますか?
-
[解決済み] グリッドレイアウトにおけるフリングジェスチャーの検出
-
[解決済み] AndroidでEditTextのテキスト長を制限する最も良い方法は何ですか?
-
[解決済み] EditTextのアンダーバーを非表示にする方法
-
[解決済み] Android - EditTextで "Enter "を処理する
-
[解決済み] EditTextの頭文字を大文字にする
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Gradle のエラーです。gradle-core.jar (com.android.tools.build:gradle-core:x.x.x) を見つけられませんでした。
-
gitlab 設定エラー。リモートリポジトリから読み込めなかったか、ホストキーの検証に失敗しました。
-
Android: インポートモジュールエラー Android リソースのリンクに失敗しました
-
エラー:未宣言の識別子(AS)の使用
-
アンドロイドのエリプサイズを使用する
-
Android Bluetooth 開発の基本プロセス
-
android bluetooth--Bluetooth on、検索、ペアリング、接続
-
Androidカスタムドロップダウンリストボックスコントロール
-
アンドロイドスタジオソフトウェア使用詳細説明書
-
AndroidStudioのショートカット 検索/置換