我想要的是在微调器的右侧显示箭头,选项列表应该是下拉而不是带有白色背景的弹出框。
见图片
我该怎么做呢,我是否需要创建自定义微调器?
这是代码
XML
<Spinner
android:id="@+id/type_spinner"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/text_color"/>
爪哇
type_Spinner = (Spinner) findViewById(R.id.type_spinner);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_dropdown_item, new String[]{"Buy","Sale","Rent","Let"});
type_Spinner.setAdapter(adapter);
答案 0 :(得分:1)
第一种方法
像这样更改xml中的Spinner
<Spinner
android:id="@+id/type_spinner"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@android:drawable/btn_dropdown" />
将theme
的{{1}}更改为
Activity
在java类
中android:Theme.Holo
第二种方法
使用ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_dropdown_item, new String[]{"Buy","Sale","Rent","Let"});
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
type_Spinner.setAdapter(adapter);
set gravity
( not layout_gravity )Spinner
而不是Button
使用android:background="@android:drawable/btn_dropdown"
设置背景来打开left|center_vertical
{3}}点击该Button
设置该按钮作为该PopUpWindow的锚点。在PopUpWindow
ListView
中OnItemClick
和{{1}}使用PopupWindow
setText(java.lang.CharSequence)
如果您使用方法1,那么它将适用于 Post Gingerbread 版。方法2将适用于任何版本的android(未经过测试) 前froyo)。
答案 1 :(得分:1)
在布局中使用android:spinnerMode
android:spinnerMode="dropdown"
在活动中使用如下:
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_dropdown_item, new String[]{"Buy","Sale","Rent","Let"});
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
type_Spinner.setAdapter(adapter);