Android 微调器下拉图标隐藏在背景图片下
Android spinner dropdown icon get hidden under background image
我在我的 android 应用程序中使用 Spinner
,我在 LinearLayout
中使用 Spinner
,我使用带有图像背景的 Relative Layout
和 LinerLayout
inside FrameLayout
显示背景图像。在这种情况下,我的下拉图标隐藏在背景图像后面。这是我的示例代码。
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:minWidth="25px"
android:minHeight="25px"
android:layout_width="match_parent"
android:orientation="vertical"
android:background="#FFFF"
android:layout_height="match_parent"
android:id="@+id/mainLinearLayout">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="bottom"
android:id="@android:id/background"
android:background="@drawable/devbg"/>
<LinearLayout
android:minWidth="25px"
android:minHeight="25px"
android:layout_width="match_parent"
android:orientation="vertical"
android:layout_height="match_parent"
android:id="@+id/linearLayout1">
<Spinner
android:id="@+id/dropStatus"
style="@style/Base.Widget.AppCompat.DropDownItem.Spinner"
android:theme="@style/CardView.Dark"
android:spinnerMode="dropdown"
android:layout_width="180dp"
android:layout_height="30dp"
android:layout_marginBottom="7dp"
android:layout_marginLeft="5dp"
android:textSize="16dp"
android:foregroundTint="#FF000000"
android:backgroundTint="#FF000000"
android:textAlignment="center"
android:drawSelectorOnTop="true"/>
</LinearLayout>
</FrameLayout>
已更新
你能试试这个代码吗?
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:minWidth="25px"
android:minHeight="25px"
android:layout_width="match_parent"
android:orientation="vertical"
android:background="#FFFF"
android:layout_height="match_parent"
android:id="@+id/mainLinearLayout">
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="bottom"
android:id="@android:id/background"
android:src="@drawable/devbg"/>
<LinearLayout
android:minWidth="25px"
android:minHeight="25px"
android:layout_width="match_parent"
android:orientation="vertical"
android:layout_height="match_parent"
android:id="@+id/linearLayout1">
<Spinner
android:id="@+id/dropStatus"
style="@style/Base.Widget.AppCompat.DropDownItem.Spinner"
android:theme="@style/CardView.Dark"
android:spinnerMode="dropdown"
android:layout_width="180dp"
android:layout_height="30dp"
android:layout_marginBottom="7dp"
android:layout_marginLeft="5dp"
android:textSize="16dp"
android:foregroundTint="#FF000000"
android:backgroundTint="#FF000000"
android:textAlignment="center"
android:drawSelectorOnTop="true"/>
</LinearLayout>
</FrameLayout>
不知道为什么要用RelativeLayout
设置背景。删掉,把背景设置在LinearLayout
,就OK了。
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:minWidth="25px"
android:minHeight="25px"
android:layout_width="match_parent"
android:orientation="vertical"
android:background="#FFFF"
android:layout_height="match_parent"
android:id="@+id/mainLinearLayout">
<LinearLayout
android:minWidth="25px"
android:minHeight="25px"
android:layout_width="match_parent"
android:orientation="vertical"
android:layout_height="match_parent"
android:id="@+id/linearLayout1"
android:background="@drawable/pink">
<Spinner
android:id="@+id/dropStatus"
style="@style/Base.Widget.AppCompat.DropDownItem.Spinner"
android:theme="@style/CardView.Dark"
android:spinnerMode="dropdown"
android:layout_width="180dp"
android:layout_height="30dp"
android:layout_marginBottom="7dp"
android:layout_marginLeft="5dp"
android:textSize="16dp"
android:foregroundTint="#FF000000"
android:backgroundTint="#FF000000"
android:textAlignment="center"
android:drawSelectorOnTop="true"/>
</LinearLayout>
</FrameLayout>
我在我的 android 应用程序中使用 Spinner
,我在 LinearLayout
中使用 Spinner
,我使用带有图像背景的 Relative Layout
和 LinerLayout
inside FrameLayout
显示背景图像。在这种情况下,我的下拉图标隐藏在背景图像后面。这是我的示例代码。
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:minWidth="25px"
android:minHeight="25px"
android:layout_width="match_parent"
android:orientation="vertical"
android:background="#FFFF"
android:layout_height="match_parent"
android:id="@+id/mainLinearLayout">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="bottom"
android:id="@android:id/background"
android:background="@drawable/devbg"/>
<LinearLayout
android:minWidth="25px"
android:minHeight="25px"
android:layout_width="match_parent"
android:orientation="vertical"
android:layout_height="match_parent"
android:id="@+id/linearLayout1">
<Spinner
android:id="@+id/dropStatus"
style="@style/Base.Widget.AppCompat.DropDownItem.Spinner"
android:theme="@style/CardView.Dark"
android:spinnerMode="dropdown"
android:layout_width="180dp"
android:layout_height="30dp"
android:layout_marginBottom="7dp"
android:layout_marginLeft="5dp"
android:textSize="16dp"
android:foregroundTint="#FF000000"
android:backgroundTint="#FF000000"
android:textAlignment="center"
android:drawSelectorOnTop="true"/>
</LinearLayout>
</FrameLayout>
已更新
你能试试这个代码吗?
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:minWidth="25px"
android:minHeight="25px"
android:layout_width="match_parent"
android:orientation="vertical"
android:background="#FFFF"
android:layout_height="match_parent"
android:id="@+id/mainLinearLayout">
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="bottom"
android:id="@android:id/background"
android:src="@drawable/devbg"/>
<LinearLayout
android:minWidth="25px"
android:minHeight="25px"
android:layout_width="match_parent"
android:orientation="vertical"
android:layout_height="match_parent"
android:id="@+id/linearLayout1">
<Spinner
android:id="@+id/dropStatus"
style="@style/Base.Widget.AppCompat.DropDownItem.Spinner"
android:theme="@style/CardView.Dark"
android:spinnerMode="dropdown"
android:layout_width="180dp"
android:layout_height="30dp"
android:layout_marginBottom="7dp"
android:layout_marginLeft="5dp"
android:textSize="16dp"
android:foregroundTint="#FF000000"
android:backgroundTint="#FF000000"
android:textAlignment="center"
android:drawSelectorOnTop="true"/>
</LinearLayout>
</FrameLayout>
不知道为什么要用RelativeLayout
设置背景。删掉,把背景设置在LinearLayout
,就OK了。
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:minWidth="25px"
android:minHeight="25px"
android:layout_width="match_parent"
android:orientation="vertical"
android:background="#FFFF"
android:layout_height="match_parent"
android:id="@+id/mainLinearLayout">
<LinearLayout
android:minWidth="25px"
android:minHeight="25px"
android:layout_width="match_parent"
android:orientation="vertical"
android:layout_height="match_parent"
android:id="@+id/linearLayout1"
android:background="@drawable/pink">
<Spinner
android:id="@+id/dropStatus"
style="@style/Base.Widget.AppCompat.DropDownItem.Spinner"
android:theme="@style/CardView.Dark"
android:spinnerMode="dropdown"
android:layout_width="180dp"
android:layout_height="30dp"
android:layout_marginBottom="7dp"
android:layout_marginLeft="5dp"
android:textSize="16dp"
android:foregroundTint="#FF000000"
android:backgroundTint="#FF000000"
android:textAlignment="center"
android:drawSelectorOnTop="true"/>
</LinearLayout>
</FrameLayout>