gpt4 book ai didi

android - 更改处于选中状态的 EditText 控件的颜色

转载 作者:行者123 更新时间:2023-12-04 23:45:30 26 4
gpt4 key购买 nike

在我的应用程序中,我从服务器获得了应用程序的配色方案。我根据服务器设置更新所有应用程序 View 的颜色。我的问题与在选定状态下更新 EditText 的颜色有关:



我可以使用 editText.setHighlightColor() 更改选择的背景颜色方法,但我能以某种方式更改 的颜色吗?蓝色拖动 View 在左下角和右下角?我无法更改颜色,使用 colorAccent style 属性,因为我在运行时从服务器获取颜色。我可以动态更改拖动 View 吗?

最佳答案

这是完整的示例,自定义 TextInputLayout 颜色:
在您的自定义*.xml文件,检查属性 styleandroid:theme

<com.google.android.material.textfield.TextInputLayout
android:id="@+id/txtConfirmPassword"
style="@style/TextInputLayoutStyle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="9dp"
android:hint="@string/confirm_password_hint"
android:importantForAutofill="no"
app:hintAnimationEnabled="false"
app:hintEnabled="false"
app:passwordToggleEnabled="true">

<com.google.android.material.textfield.TextInputEditText
style="@style/TextInputEditTextStyle"
android:layout_width="match_parent"
android:layout_height="48dp"
android:hint="@string/password_hint"
android:inputType="textPassword"
android:singleLine="true"
android:theme="@style/TextInputEditTextTheme" />
</com.google.android.material.textfield.TextInputLayout>
在您的 themes.xml文件
<style name="TextInputEditTextStyle">
<item name="android:textColor">@color/main_text</item>
</style>

<style name="TextInputEditTextTheme">
<item name="android:textColorHighlight">@color/gray2</item> <!-- background of selected text -->
<item name="android:colorControlActivated">@color/main_text</item> <!-- cursor -->
</style>
您可以自定义 TextInputLayout的边界,通过将其添加到 themes.xml
    <style name="TextInputLayoutStyle" parent="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.Dense">
<item name="boxStrokeColor">@color/text_input_layout_tint</item>
<item name="boxStrokeWidth">1dp</item>
<item name="boxStrokeWidthFocused">1dp</item>
<item name="boxCornerRadiusBottomEnd">8dp</item>
<item name="boxCornerRadiusBottomStart">8dp</item>
<item name="boxCornerRadiusTopStart">8dp</item>
<item name="boxCornerRadiusTopEnd">8dp</item>
</style>
文件 @color/text_input_layout_tint :
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:color="@color/action_yes" android:state_focused="true" />
<item android:color="@color/stroke" />
</selector>

关于android - 更改处于选中状态的 EditText 控件的颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55792551/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com