2012-03-29 50 views
3

我如何修改微调器下拉部分的大小? 我必须在XML或代码本身做到这一点吗?修改Android微调器的大小下拉部件大小?

+0

你是指容纳所有行的行或实际容器?如果您是指该行,则应该为下拉列提供自定义布局。 – Mimminito 2012-03-29 10:16:40

+2

我的意思是下降的部分:http://img853.imageshack.us/img853/8241/stackoverflow.png – user1297720 2012-03-29 10:25:49

回答

5

因为它是默认控件,所以无法更改微调控件的大小。但是你可以使用背景图像进行自定义。这里是我的代码:

<Spinner 
    android:id="@+id/spinner" 
    android:layout_width="fill_parent" 
    android:layout_height="45dp" 
    android:drawSelectorOnTop = "true" 
    android:layout_marginLeft="20dp" 
    android:layout_marginTop="5dp" 
    android:layout_marginRight="20dp" 
    android:layout_below="@+id/placeCity" 
    android:paddingLeft="5dip" 
    android:background="@drawable/myspinner_background" 
/> 
<ImageView 
     android:id="@+id/imageView1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignRight="@+id/spinner" 
     android:layout_alignTop="@+id/spinner" 
     android:layout_marginRight="5dp" 
     android:layout_marginTop="10dp" 
     android:src="@drawable/down" /> 

这是写在XML。在drawable文件夹中创建另一个名为myspinner_background.xml的文件。里面那个,写这样的代码:

<shape xmlns:android="http://schemas.android.com/apk/res/android" > 
<stroke 
    android:color="#f269be" 
    android:width="2dp" /> 
<solid 
    android:color="#ECC8EC" /> 

8

在XML中,我相信你的android 设置:dropDownWidth。这为我工作:

<Spinner 
    android:id="@+id/spinner" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:dropDownWidth="dp_value_you_desire" /> 
+0

这是有效的。它可以在API Level 16中使用。Jellybean。 – 2012-11-10 04:57:17

0

我无亲,但经过数千次的尝试,这里的最终简单的解决方案... 只是复制微调标签这一行...

android:dropDownHeight="100dp" <!--change 100dp to your requirement--> 

你还可以修改宽度...

android:dropDownHeight="100dp" <!--change 100dp to your requirement--> 

这与autocompletetextview效果很好。