【问题标题】:Spinner background color with dropdowndown icon带有下拉图标的微调器背景颜色
【发布时间】:2017-06-13 13:52:25
【问题描述】:

我正在尝试创建一个带有一些背景颜色和下拉图标的微调器。但是每当我应用背景颜色时,下拉图标就会消失。那么如何让微调器带有下拉图标和不同的背景颜色。 请查看我在下面尝试的 xml:

预期输出:

获取(无下拉图标)

背景移除然后我得到以下输出:

<android.support.v7.widget.CardView
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_marginLeft="@dimen/dp_5"
        android:layout_marginRight="@dimen/dp_5"
        android:layout_weight="8"
        android:padding="@dimen/dp_8"
        app:cardElevation="@dimen/dp_5">

        <android.support.v7.widget.AppCompatSpinner
            android:id="@+id/appCompatSpinner"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:entries="@array/clubName"
            android:textAlignment="center"
            android:spinnerMode="dropdown"
           android:background="@color/colorPrimary_blue"
            app:popupTheme="@style/ThemeOverlay.AppCompat.Light">

        </android.support.v7.widget.AppCompatSpinner>
    </android.support.v7.widget.CardView>

【问题讨论】:

    标签: android android-spinner


    【解决方案1】:

    创建 .xml 类并编写此代码。

       <?xml version="1.0" encoding="utf-8"?>
         <layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item>
        <color android:color="@color/InputBg" />
    </item>
    <item android:gravity="center_vertical|right" android:right="8dp">
        <layer-list>
            <item android:width="12dp" android:height="12dp" android:gravity="center" android:bottom="10dp">
                <rotate
                    android:fromDegrees="45"
                    android:toDegrees="45">
                    <shape android:shape="rectangle">
                        <solid android:color="#666666" />
                        <stroke android:color="#aaaaaa" android:width="1dp"/>
                    </shape>
                </rotate>
            </item>
            <item android:width="30dp" android:height="10dp" android:bottom="21dp" android:gravity="center">
                <shape android:shape="rectangle">
                    <solid android:color="@color/InputBg"/>
                </shape>
            </item>
        </layer-list>
    </item>
    

            And Apply like this in Spinner.
     <Spinner
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@drawable/spinner_bg" />
    

    【讨论】:

      【解决方案2】:

      对此的简单解决方法只需将微调器包裹在框架布局中并设置您选择的布局的背景颜色

       <FrameLayout
          android:layout_width="match_parent"
          android:layout_height="wrap_content"
          android:background="@color/blue"
          >
      
          <Spinner
              android:layout_width="match_parent"
              android:layout_height="wrap_content"
              />
      
      </FrameLayout>
      

      【讨论】:

        猜你喜欢
        • 2015-05-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多