gpt4 book ai didi

android - 在 TextInputLayout.OutlinedBox 中自定义边界框描边

转载 作者:太空狗 更新时间:2023-10-29 13:45:18 25 4
gpt4 key购买 nike

我正在尝试更改 com.google.android.material.textfield.TextInputLayout 的框描边颜色,但没有聚焦但没有属性,这是我的 TextInputLayout代码

<com.google.android.material.textfield.TextInputLayout
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="36dp"
android:layout_marginTop="38dp"
android:layout_marginEnd="36dp"
android:textColorHint="@color/white"
app:boxStrokeColor="@color/white"
app:boxStrokeWidth="1dp">

<EditText
android:id="@+id/editTxt_email"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/hint_email"
android:inputType="textEmailAddress"
android:textColorHint="@color/white" />
</com.google.android.material.textfield.TextInputLayout>

我搜索了一种更改其颜色的方法并找到了这个链接: https://github.com/material-components/material-components-android/issues/112

所以我尝试在我的颜色文件中使用这一行

<color name="mtrl_textinput_default_box_stroke_color" tools:override="true">#fff</color>

这解决了问题并更改了描边框颜色,但这里的问题是我想在同一应用程序的其他 TextInputLayouts 中更改此颜色!!

最佳答案

要更改框描边颜色,只需使用 xml 中的 app:boxStrokeColor 属性即可。

 <com.google.android.material.textfield.TextInputLayout
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox"
app:boxStrokeColor="@color/mySelector"
../>

您应该使用选择器。这是默认值:

<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:color="?attr/colorPrimary" android:state_focused="true"/>
<item android:alpha="0.87" android:color="?attr/colorOnSurface" android:state_hovered="true"/>
<item android:alpha="0.12" android:color="?attr/colorOnSurface" android:state_enabled="false"/>
<item android:alpha="0.38" android:color="?attr/colorOnSurface"/>
</selector>

您还可以使用自定义样式:

  <style name="MyOutlinedBox" parent="Widget.MaterialComponents.TextInputLayout.OutlinedBox">
<item name="boxStrokeColor">@color/text_input_selector</item>
</style>

enter image description here enter image description here

关于android - 在 TextInputLayout.OutlinedBox 中自定义边界框描边,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55210983/

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