如何在android中设置MaterialBetterSpinner的背景?

时间:2018-03-27 09:59:58

标签: android properties background android-spinner

这是我的campaign_create.xml设计

enter image description here

Spinner:

        <com.weiwangcn.betterspinner.library.material.MaterialBetterSpinner
            android:id="@+id/select_city"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:hint="Select Category"
            android:background="@drawable/rounded_white"
            android:textColorHint="#ffffff"
            android:layout_marginRight="10dp"
            android:layout_marginLeft="10dp"
            android:layout_alignParentStart="true"
            android:layout_marginTop="9dp" />

@绘制/ rounded_white.xml

<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item>
    <shape>
        <solid android:color="#f2f2f2"/>
        <stroke android:width="0.1dp"
            android:color="@color/white"/>
        <corners android:radius="40dp"/>
    </shape>
</item>
</selector>

我想设置微调器的背景。

是可绘制的文件。我设置了属性

android:background="@drawable/rounded_white"   

但它不起作用。

如何设置微调器的背景?

3 个答案:

答案 0 :(得分:0)

它必须正常工作,但您无法检查预览。

尝试将值(适配器)设置为微调器并运行代码。

但根据你的布局,我猜你应该将线性或相对布局作为父级,并将Imageview和Spinner保持在内部。

答案 1 :(得分:0)

为这个微调器创建一个样式:

  <style name="spinner_style" parent="Base.Widget.AppCompat.Spinner">
            <item name="android:background">@drawable/spinner_custom</item>
            <item name="android:layout_marginLeft">10dp</item>
            <item name="android:layout_marginRight">10dp</item>
            <item name="android:layout_marginBottom">10dp</item>
            <item name="android:paddingLeft">8dp</item>
            <item name="android:paddingTop">5dp</item>
            <item name="android:paddingBottom">5dp</item>
            <item name="android:popupBackground">#848484</item>
            <item  name="android:textColor">#000000</item>
        </style>

在您的微调器中添加此样式:

<Spinner
    style="@style/spinner_style"
    android:layout_width="match_parent"
    android:layout_height="40dp"
    android:layout_margin="5dp" />

答案 2 :(得分:0)

我使用简单的微调器控件并在代码下面设置背景..

<Spinner
    android:id="@+id/mySpinner"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:entries="@array/name"
    android:background="@drawable/button_selector_blue"
    />

和button_selector_blue.xml ..

<?xml version="1.0" encoding="utf-8"?>

                                                                                                                                                      

<item android:state_pressed="false">
    <layer-list>
        <item>
            <shape android:shape="rectangle">
                <solid android:color="@color/colorPrimary"/>
                <padding android:left="0dp"
                    android:top="0dp"
                    android:right="0dp"
                    android:bottom="0dp"/>
                <corners android:radius="5dp" />
            </shape>
        </item>
    </layer-list>
</item>