EditText
が空である場合と埋め込まれていない場合の背景が異なる場合がありますか?空白と塗りつぶしの異なる背景EditText
答えて
あなたが実際に
public class MyEditText extends EditText {
Drawable backgroundEmpty, backgroundFilled;
public MyEditText(Context context) {
super(context);
init(null);
}
public MyEditText(Context context, AttributeSet attrs) {
super(context, attrs);
init(attrs);
}
private void init(AttributeSet attrs){
if(attrs != null){
backgroundEmpty = ...
backgroundFilled = ...
}else{
backgroundEmpty = ...
backgroundFilled = ...
}
}
@Override
protected void onTextChanged(CharSequence text, int start, int lengthBefore, int lengthAfter) {
super.onTextChanged(text, start, lengthBefore, lengthAfter);
setBackground(text.toString().length() == 0 ? backgroundEmpty : backgroundFilled);
}
}
またはTextWatcher
editText.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
}
@Override
public void afterTextChanged(Editable s) {
editText.setBackground(s.toString().length() == 0 ? backgroundEmpty : backgroundFilled);
}
});
テキストウォッチャーを作成してEditTextに追加することができます。 親レイアウト(backgroundColorプロパティ)を変更するのは難しくありません。
幸運。 (次回は:)あなたの問題の詳細説明になろう)
を使用し、私は追加したいのEditTextをサブクラス化することができます:あなたは予定がある場合それらのいくつかを持つためには、EditTextをサブクラス化し、このサブクラスに二次的な背景属性を与えることは価値があるかもしれないので、これはレイアウトxmlを通して処理することができます。 – Haem
これは、2-Way Databind Androidの使用を開始した場合にのみ達成できます。 これは、XMLレイアウトが条件を受け入れる唯一の方法です。 続きを読む:https://developer.android.com/topic/libraries/data-binding/index.html#expression_language –
私はサブクラスコードの条件を実装する行に沿って考えていました。 「ビュークラスの作成」(https://developer.android.com/training/custom-views/create-view.html)チュートリアルのように、「secondarybackground」と言ってください。 – Haem
- 1. 可能なオーバードロー:背景もペイントして背景を塗りつぶすテーマの背景要素を塗りつぶす
- 2. CSSの背景サイズは親を塗りつぶします
- 3. 親にdiv塗りつぶし空白を作成する
- 4. ポリゴンを描き、背景画像で塗りつぶします
- 5. C#塗りつぶし矩形は空白を残す
- 6. p5.jsバックグラウンドのみ背景の半分を塗りつぶす
- 7. オプションの背景色を塗りつぶすことなくセレクタの背景色を変更するには?
- 8. divの背景を半分に塗りつぶす方法
- 9. Java Graphics2Dスケールフォントで背景を塗りつぶす
- 10. div全体を背景色で塗りつぶす方法
- 11. 背景の背景の空白
- 12. Prawnのbounding_boxに背景/塗りつぶしの色を追加する方法
- 13. 画像の塗りつぶし方法RelativeLayoutの背景を伸ばしずに
- 14. 空白の背景のループ
- 15. matplotlib:カラーマップを使用して表のセルの背景を塗りつぶす
- 16. ggplot2のgeom_polygon - 異なる塗りつぶしのためのファセット?
- 17. Chart.js線、負の点の異なる塗りつぶしの色
- 18. 画像のクロップ時に塗りつぶされた画像の背景色が透明か白であるか
- 19. CSS:スクロール時に背景画像が塗りつぶされない - redux
- 20. 背景色で塗りつぶしてからPNGをオーバーレイします。
- 21. 背景色、背景画像がCSSボックスモデル全体に塗りつぶされていない
- 22. CSSの背景を使用して背景を塗りつぶす画像を伸ばす
- 23. 塗りつぶしの色が異なるgeom_area
- 24. EditTextの値で配列を塗りつぶし
- 25. 2つの異なる色でテキストを塗りつぶす
- 26. タッチイベントを使用して空白の色を塗りつぶす方法は?
- 27. CSSの背景のアニメーションと透明なテキストの塗りつぶしの色を組み合わせる
- 28. iOS 5.1: - [UIColor colorWithPatternImage:]背景色が黒く塗りつぶされる
- 29. 親コンテナの背景に同じサイズのテキストを均等に塗りつぶす
- 30. ハイチェアが別の背景色でチャートの内側に塗りつぶす
あなたの回答をさらに一歩進めて、いくつかのXMLコードを提供することができます^^。 – AnixPasBesoin
何のXMLコードですか? – lelloman
カスタムEditTextを使用します。 – AnixPasBesoin