我正在使用微调器,它像对话框一样打开。我需要微调器像下拉菜单一样打开。
这是xml文件
<Spinner
android:id="@+id/sp_countrycode_issue_coupon"
android:layout_width="60dp"
android:layout_height="40dp"
android:layout_gravity="center"
android:layout_marginLeft="3dp"
android:layout_weight="1"
android:background="@drawable/img_small_box_green"
android:dropDownSelector="@drawable/img_small_box_green"
android:gravity="right|center"
android:textAlignment="center" />
这是代码
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(
this, R.array.country_code,
android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(R.layout.spinner_textview);
sp_country_code.setAdapter(adapter);
我发布了我的图像,就像我的视图和微调器显示视图一样。但我需要像第三张图像一样显示微调器
答案 0 :(得分:4)
迟到但可能对其他人有用,您只需将spinnerMode设置为下拉列表:
android:spinnerMode="dropdown"
否则,如果您决定将未来的想法更改为想要对话,只需将模式更改为对话框即可!
答案 1 :(得分:3)
有关您在图片3 中显示的信息下拉微调器适用于 3.0及以上版本。对于 2.2和2.3之类的早期版本,它将像对话框一样打开。它会自动显示2.3以上版本的下拉列表。
如果选择Android 4.0或更高版本,将自动添加样式。
<!--
Base application theme for API 14+. This theme completely replaces
AppBaseTheme from BOTH res/values/styles.xml and
res/values-v11/styles.xml on API 14+ devices.
-->
<style name="AppBaseTheme" parent="android:Theme.DeviceDefault.Light.DarkActionBar">
<!-- API 14 theme customizations can go here. -->
</style>
参考代码
severitySpinner = (Spinner) findViewById(R.id.spinnerSeverity);
severityAdapter = ArrayAdapter.createFromResource(this,
R.array.severity_arrays, android.R.layout.simple_spinner_item);
severityAdapter
.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
severitySpinner.setAdapter(severityAdapter);
修改
<application
android:icon="@drawable/appicon"
android:label="Test"
android:theme="@style/AppTheme" >
答案 2 :(得分:2)
将主题更改为android:theme="@android:style/Theme.Holo.Light.NoActionBar.Fullscreen"
和用于微调器style="@style/MyDropDownNav"
的xml文件集样式
并在样式文件中添加样式。
<!-- style the list navigation -->
<style name="MyDropDownNav" parent="android:style/Widget.Holo.Light.Spinner">
<item name="android:popupBackground">@drawable/bg_popup</item>
<item name="android:dropDownSelector">@drawable/top_layout</item>
</style>
答案 3 :(得分:0)
只需更改以下代码:
ArrayAdapter<String> spinnerMenu = new ArrayAdapter<String>(
RegisterActivity.this, R.layout.spinner_item, list);
// TODO Auto-generated method stub
spinnerMenu
.setDropDownViewResource(android.R.layout.simple_list_item_single_choice);
country.setAdapter(spinnerMenu);
country.getSelectedItemPosition();