AndroidEditTextカスタムスタイル



Android Edittext Custom Style



私の先生、神の人工知能チュートリアルを共有してください!ゼロベース、わかりやすい! http://blog.csdn.net/jiangjunshow

この記事を転載することもできます。知識を共有し、人々に利益をもたらし、中国国家の大きな若返りを実現します!



1.境界線を削除します



EditTextのbackgroundプロパティは@nullに設定され、実行されます:android:background = '@ null'
スタイル属性は追加することも追加しないこともできます

オリジナルに添付:
@SlumberMachine、それは素晴らしい観察です!しかし、android:editable = 'true'を設定するだけでなく、TextViewを編集可能にすることの方が多いようです。それは「inputメソッド」と関係があります-それが何であれ-そしてそれがTextViewとEditTextの本当の違いがあるところです。 TextViewは、EditTextを念頭に置いて設計されました。確かにそうです。 EditTextのソースコードとおそらくEditTextスタイルを見て、そこで実際に何が起こっているのかを確認する必要があります。ドキュメントだけでは不十分です。

私はandroid-developersグループで同じ質問をしましたが、満足のいく答えが得られました。これはあなたがしなければならないことです:

XML:
style = '?android:attr / textViewStyle'
android:background = '@ null' android:textColor = '@ null' />


style = '?android:attr / textViewStyle'の代わりに、style = 'と書くこともできます。 @アンドロイド :style / Widget.TextView '、理由と意味を聞かないでください。

二。 AndroidEditTextは境界線の色を変更します

最初のステップ:より良い比較のために、2つの同一のEditTextを準備します(アクティビティが開始すると、フォーカスは最初のEditTextになります。これが不要な場合は、高さと幅が避けるために0、これはここでは当てはまりません、コードは次のとおりです:



[html] プレーンビュー コピー
  1. <EditText
  2. android:layout_width='fill_parent'
  3. android:layout_height=「36dip」
  4. android:background='@ drawable / bg_edittext'
  5. android:padding=「5dip」
  6. android:layout_margin=「36dip」
  7. android:textColorHint='#AAAAAA'
  8. android:textSize=「15dip」
  9. android:singleLine=「本当」
  10. android:ヒント='入ってください...'
  11. />


次に、3つのxmlファイルを作成します。これらは、入力ボックスがフォーカスされていないときの背景、入力ボックスがフォーカスを取得したときの背景、セレクターのバックグラウンドセレクター(入力ボックスを取得してフォーカスを失うことができる場所)です。コードは次のとおりです。次のように:

Bg_edittext_normal.xml(フォーカスが取得されない場合)

[html] プレーンビュー コピー
  1. xml バージョン=「1.0」 エンコーディング=「UTF-8」?>
  2. <形状 xmlns:android=「http://schemas.android.com/apk/res/android」>>
  3. <固体 android:color='#FFFFFF' />
  4. <コーナー android:radius=「3dip」/>
  5. <脳卒中
  6. android:width=「1dip」
  7. android:color='#BDC7D8' />
  8. 形状>>

Bg_edittext_focused.xml(フォーカスを取得する場合)

[html] プレーンビュー コピー
  1. xml バージョン=「1.0」 エンコーディング=「UTF-8」?>
  2. <形状 xmlns:android=「http://schemas.android.com/apk/res/android」>>
  3. <固体 android:color='#FFFFFF' />
  4. <コーナー android:radius=「3dip」/>
  5. <脳卒中
  6. android:width=「1dip」
  7. android:color='#728ea3' />
  8. 形状>>

Bg_edittext.xml(セレクターセレクター、この情報はオンラインでたくさん)

[html] プレーンビュー コピー
  1. xml バージョン=「1.0」 エンコーディング=「UTF-8」?>
  2. <セレクタ xmlns:android=「http://schemas.android.com/apk/res/android」>>
  3. <項目 android:state_window_focused=「偽」 android:drawable='@ drawable / contact_edit_edittext_normal' />
  4. <項目 android:state_focused=「本当」 android:drawable='@ drawable / contact_edit_edittext_focused' />
  5. セレクタ>>


これはOKです。効果は次のとおりです。

2番目の入力ボックスの境界線が暗くなりますが、よりフレンドリーですか?



先生の人工知能チュートリアルに電話してください! http://blog.csdn.net/jiangjunshow

画像