And*_*mov 1 android android-layout android-spinner android-actionbar
我已经像这里一样实现了微调器.现在我想将微调器放在ActionBar中(将微调器设置为CustomView到actionBar)但它不会出现在那里:(
Spinner spinner = (Spinner) findViewById(R.id.planets_spinner);
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this,
R.array.planets_array, android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(adapter);
actionBar.setCustomView(spinner);
Run Code Online (Sandbox Code Playgroud)
这是.XML
<?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="match_parent"
android:baselineAligned="false"
android:orientation="vertical" >
<FrameLayout
android:id="@+id/parkfragment"
android:layout_width="fill_parent"
android:layout_height="fill_parent" />
<Spinner
android:id="@+id/planets_spinner"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
请不要建议使用ActionBar DropDown List,我不能使用它,因为我已经在使用ActionBar Tabs了.android不允许同时使用它们.任何帮助将不胜感激
您的代码缺少此行:
actionBar.setDisplayShowCustomEnabled(true);
Run Code Online (Sandbox Code Playgroud)
参见ActionBar#setDisplayShowCustomEnabled(boolean showCustom)参考.
为什么FrameLayout布局中的空白占据了所有的宽度和高度?去掉它.并删除它LinearLayout.只需使用此作为布局:
<?xml version="1.0" encoding="utf-8"?>
<Spinner xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/planets_spinner"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
Run Code Online (Sandbox Code Playgroud)
然后写这样的东西,一切都很好:
actionBar.setCustomView(R.layout.your_layout_with_the_spinner);
actionBar.setDisplayShowCustomEnabled(true);
Spinner spinner = (Spinner) findViewById(R.id.planets_spinner);
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this,
R.array.planets_array, android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(adapter);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1977 次 |
| 最近记录: |