为了账号安全,请及时绑定邮箱和手机立即绑定

无法更改 Material TextInputEditText 的光标和气泡颜色

无法更改 Material TextInputEditText 的光标和气泡颜色

茅侃侃 2022-06-04 09:56:17
我想更改 Material TextInputEditText 的气泡和光标颜色。我试过 colorAccent,android:textCursorDrawable 这些都不能正常工作。
查看完整描述

3 回答

?
慕桂英546537

TA贡献1848条经验 获得超10个赞

材质属性颜色colorControlActivated具有魔力。您必须为 TextInputLayout 创建样式。


例如:


<style name="TextInputLayoutAppearance" parent="Widget.Design.TextInputLayout">

    <item name="colorControlNormal">@color/white</item>

    <item name="colorControlActivated">@color/red</item>

    <item name="colorControlHighlight">@color/blue</item>

</style>

然后你必须在控件的主题属性中应用这个样式:


 <com.google.android.material.textfield.TextInputLayout

                android:id="@+id/lblObservaciones"

                android:theme="@style/TextInputLayoutAppearance"

                style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox"

                android:layout_width="match_parent"

                android:layout_height="wrap_content"

                app:boxStrokeColor="@color/blue"

                app:hintTextAppearance="@style/TextAppearance.AppCompat.Medium"

                app:hintTextColor="@color/blue">


            <com.google.android.material.textfield.TextInputEditText

                    android:id="@+id/comments"

                    android:layout_width="match_parent"

                    android:layout_height="100dp"

                    android:gravity="top"

                    android:inputType="textMultiLine"

                    android:maxLength="200" />

</com.google.android.material.textfield.TextInputLayout>


查看完整回答
反对 回复 2022-06-04
?
慕容森

TA贡献1853条经验 获得超18个赞

只需在应用程序主题(日/夜)中应用colorControlActivated,所有 Material TextInputEditField 将具有更改的光标颜色

<item name="android:colorControlActivated">@color/green</item>


查看完整回答
反对 回复 2022-06-04
?
慕盖茨4494581

TA贡献1850条经验 获得超11个赞

您必须使用以下属性:

<style name="AppTheme" parent="Theme.MaterialComponents.Light">
    <item name="colorPrimary">#212121</item>
    <item name="colorPrimaryVariant">#000000</item>
    <item name="colorOnPrimary">#FFFFFF</item>
    <item name="colorSecondary">#2962FF</item>
    <item name="colorSecondaryVariant">#0039CB</item>
    <item name="colorOnSecondary">#FFFFFF</item>
    <item name="colorError">#F44336</item>
    <item name="colorOnError">#FFFFFF</item>
    <item name="colorSurface">#FFFFFF</item>
    <item name="colorOnSurface">#212121</item>
    <item name="android:colorBackground">@color/background</item>
    <item name="colorOnBackground">#212121</item></style><color name="background">#FAFAFA</color>


查看完整回答
反对 回复 2022-06-04
  • 3 回答
  • 0 关注
  • 187 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信