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

标签 java android xml material-design

我想更改 Material TextInputEditText 的气泡和光标颜色。我试过 colorAccent,android:textCursorDrawable 这些都不能正常工作。

Files in here

You can see it in this image

最佳答案

Material 属性颜色 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>

关于java - 无法更改 Material TextInputEditText 的光标和气泡颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54487356/

相关文章:

c# - 从 Media.RecordSoundAction 保存的音频文件中获取字节数组

java - 如何生成用于 AES 算法的 128 位 key

android - 在android中用java代码包装 TextView 的内容

java - 在哪里可以找到 Java(swing、JWS)与 RIA 的 HTML/JS 的简明比较

java - 方法签名中的参数化列表

ruby - XML Builder 中的破折号

xml - XML XPath问题

sql-server - 在 SQL Server 中存储具有标准结构的 XML 是对 XML 数据类型的错误使用吗?

java - winsock和java socket之间的通信

java - 与Tomcat的 war 如何交付Realm?