当我使用400dp
这样的特定宽度作为DropDown项目的宽度和spinner
宽度时,它会正确匹配。
但当我使用match_parent
spinner
和custom_spinner_item
宽度时,它不匹配?图片可能会给出一个主意
我的代码出了什么问题?我希望match_parent
使用相同的宽度?
这是我的自定义custom_spinner_item
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<TextView
android:id="@+id/textView"
android:layout_width="400dp" // width
android:layout_height="30dp"
android:textSize="18dp"
android:text="wallets"
android:layout_marginLeft="5dp"
android:paddingLeft="5dp"
android:background="#FFFFFF"
android:textColor="#282727"/>
<View
android:layout_width="400dp"
android:layout_height="1dp"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:background="#8e8c8c"/>
</LinearLayout>
我的片段
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/appbackground"
android:paddingRight="5dp"
android:paddingLeft="5dp"
android:paddingTop="5dp">
// some code
<LinearLayout
android:id="@+id/dropDownLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:background="@drawable/zxing_roundedbgwhite"
android:orientation="vertical">
<Spinner
android:id="@+id/spinner1"
android:layout_width="400dp" // width
android:layout_height="35dp"
android:dropDownWidth="400dp" // width
android:spinnerMode="dropdown" />
</LinearLayout>
// some code
</LinearLayout>
答案 0 :(得分:4)
最好的方法是通过提供
隐藏Spinner
的箭头
android:background="@null"
到Spinner
因此该项目将占用Spinner
然后在ImageView
中放下箭头,并在Spinner
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<Spinner
android:id="@+id/spinner1"
android:layout_width="match_parent"
android:background="@null"
android:layout_height="35dp"
android:dropDownWidth="match_parent"
android:spinnerMode="dropdown" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignEnd="@+id/spinner1"
android:layout_alignRight="@+id/spinner1"
android:src="@drawable/arrow_down"
android:layout_alignTop="@id/spinner1"
android:layout_alignBottom="@+id/spinner1"/>
</RelativeLayout>