[解決済み】appcompat v7でEditTextの最下行の色を変更する。
2022-03-26 17:04:56
質問
Android 5 以下で見た目を統一するために appcompat v7 を使っています。割とうまくいっています。しかし、EditTextsの下線の色とアクセントカラーを変更する方法がわかりません。可能でしょうか?
を定義してみました。
android:editTextStyle
(しかし、背景色や文字色の変更には成功しましたが、下線やアクセントカラーは変更できませんでした。使用すべき特定のプロパティ値があるのでしょうか?
android:background
16進数で色を指定することはできないのでしょうか?
<style name="Theme.App.Base" parent="Theme.AppCompat.Light.DarkActionBar">
<item name="android:editTextStyle">@style/Widget.App.EditText</item>
</style>
<style name="Widget.App.EditText" parent="Widget.AppCompat.EditText">
???
</style>
android API 21のソースによると、マテリアルデザインを使用したEditTextは、以下のようになるようです。
colorControlActivated
と
colorControlNormal
. そのため、以前のスタイル定義でこれらのプロパティをオーバーライドしようとしましたが、効果がありません。おそらく、appcompatはこれを使用していないのでしょう。残念ながら、マテリアルデザインを使ったappcompatの最後のバージョンのソースが見つかりません。
解決方法は?
ようやく、解決策が見つかりました。それは、単に
colorControlActivated
,
colorControlHighlight
と
colorControlNormal
を編集テキストスタイルではなく、アプリテーマの定義に追加してください。そして、このテーマをどのような活動にも利用できるように考えてください。以下はその例です。
<style name="Theme.App.Base" parent="Theme.AppCompat.Light.DarkActionBar">
<item name="colorControlNormal">#c5c5c5</item>
<item name="colorControlActivated">@color/accent</item>
<item name="colorControlHighlight">@color/accent</item>
</style>
関連
-
[解決済み] AndroidのEditTextビューで複数行を許可しますか?
-
[解決済み] HashMapのtoString関数はなぜ異なる順序で自分自身を印刷するのですか?
-
[解決済み] アイテムの親を取得する際にエラーが発生しました。AppCompat v23にアップグレードした後、指定された名前に一致するリソースが見つかりません。
-
[解決済み] Android標準のボタンを色違いに
-
[解決済み] Androidでフローティングアクションボタンの色を変更する
-
[解決済み] EditTextのカーソル色を設定する
-
[解決済み】編集テキストを1行に限定する。
-
[解決済み】背景色のあるボタンにマテリアル効果を適用する。
-
[解決済み] リソースが見つかりません - Theme.AppCompat.Light.DarkActionBar
-
[解決済み] Material Designでアラートダイアログのスタイルが決まらない
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] トークンのシンタックスエラー、これらのトークンを削除してください [closed].
-
[解決済み] tempとは何ですか、またjavaにおけるtempの用途は何ですか?
-
[解決済み] ストリングビルダー.イコール Java
-
[解決済み] java.lang.ClassNotFoundException: クラス com.ibm.db2.jcc.DB2Driver が Worklight プラットフォームまたはプロジェクトに見つかりませんでした。
-
[解決済み] ORA-01654: インデックスを拡張できません。
-
[解決済み] java.util.MissingFormatArgumentException: 形式指定子 '%s' がありません。
-
[解決済み] Javaでdoubleをfloatに変換する
-
[解決済み】EditTextの線の色を変更する方法
-
[解決済み] [Solved] ColorStateListをプログラムで作成するには?
-
[解決済み] TextinputLayoutのラベルとedittextのアンダーラインの色を変更する方法 android