首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >编辑MultiAutocompleteTextView风格

编辑MultiAutocompleteTextView风格
EN

Stack Overflow用户
提问于 2018-09-30 09:01:56
回答 1查看 279关注 0票数 2

类似问题

Apply a style on MultiAutoCompleteTextView:这个问题是因为OP试图覆盖样式没有声明的一些属性。这不是我的问题。

android: MultiAutoCompleteTextView style like gmail:在这里,OP希望设置与GMail相同的样式,答案显示了2API。此外,没有显示XML代码。因此,这与我的问题和期望有很大不同。

问题所在

我的材料 MultiAutoCompleteTextView风格似乎不适用。更准确地说,我只想做我的(材料!)的底线默认行!小部件变成黄色和1/x的高度。默认情况下,它是灰色的,可能是3 3px的高度,如下所示。

(这将在我的活动片段启动时显示,这是此MultiAutoCompleteTextView的默认材料样式)

我试过的

很多事情!-)

  1. 我在我的应用程序的主题中定义了一种样式来覆盖android:autoCompleteTextViewStyle (NB: 不存在)
  2. 在覆盖中,我尝试设置颜色(背景颜色、颜色、重音颜色、colorControlNormal、colorFocusedHighlight等)和( b)设置背景,在XML文件中定义。什么都没起作用,

资料来源

App主题

代码语言:javascript
复制
<style name="" parent="Theme.AppCompat.Light.NoActionBar">
        <item name="android:autoCompleteTextViewStyle">@style/my_autoCompleteTextViewStyle</item>
    </style>

@style/my_autoCompleteTextViewStyle

代码语言:javascript
复制
<style name="my_autoCompleteTextViewStyle" parent="android:Widget.Material.Light.AutoCompleteTextView">
    <item name="android:background">@drawable/background_autocompletetextview</item>

    <item name="android:color">@color/colorRichYellow</item>
    <item name="android:borderlessButtonStyle">@color/colorRichYellow</item>
    <item name="android:colorAccent">@color/colorRichYellow</item>
    <item name="android:colorControlHighlight">@color/colorRichYellow</item>
    <item name="android:colorActivatedHighlight">@color/colorRichYellow</item>
    <item name="android:colorControlActivated">@color/colorRichYellow</item>
    <item name="android:colorControlNormal">@color/colorRichYellow</item>
    <item name="android:colorBackground">@color/colorRichYellow</item>
    <item name="android:colorFocusedHighlight">@color/colorRichYellow</item>
</style>

@drawable/background_autocompletetextview

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="line">
    <stroke android:width="1dp" android:color="@color/colorRichYellow" />
</shape>

我的问题

我不明白为什么不管用。我已经在一个spinner (选择框)中这样做了,而且它非常有效.我怎样才能让它为我的材料MultiAutoCompleteTextView工作

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-10-02 19:32:15

调度程序我认为您需要将这一行添加到您的MultiAutoCompleteTextView中

首先,为名为"underline.xml“的MultiAutoCompleteTextView创建一个后台资源

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
    <item
        android:bottom="1dp"
        android:left="-2dp"
        android:right="-2dp"
        android:top="-2dp">
        <shape android:shape="rectangle" >
            <stroke
                android:width="1dp"
                android:color="@color/colorRichYellow" />
            <solid android:color="#00FFFFFF" />
            <padding
                android:bottom="5dp"
                android:left="5dp"
                android:right="5dp"
                android:top="5dp" />
        </shape>
    </item>
</layer-list>

在此之后,只需设置为MultiAutoCompleteTextView项如下:

代码语言:javascript
复制
android:background="@drawable/underline"

我们需要这样做,因为你也想调整线路的尺寸。如果您只需要更改底线的颜色,则可以简单地设置

代码语言:javascript
复制
app:backgroundTint="@color/colorRichYellow"

避免创建没有设置android:background字段的underline.xml文件

更新(按评论中的要求)

如果您想使用样式,请将这一行添加到您的样式文件中:

代码语言:javascript
复制
<style name="my_autoCompleteTextViewStyle" parent="android:Widget.Material.Light.AutoCompleteTextView">
    ....
    <item name="android:background">@drawable/underline</item>
    ....
</style>

通过这种方式,您可以通过设置样式来对所有的ACEditText产生这种效果!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52576381

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档