问题:有时需要将aciton items从坐向右排列,或者在action bar上显示更多的内容。
//hiding default app icon
ActionBar actionBar = getActionBar();
actionBar.setDisplayShowHomeEnabled(false);
//displaying custom ActionBar
View mActionBarView = getLayoutInflater().inflate(R.layout.my_action_bar, null);
actionBar.setCustomView(mActionBarView);
actionBar.setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM)
actionBar.setDisplayShowCustomEnabled(true);
my_action_bar.xml:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/turquoise">
<ImageButton
android:id="@+id/btn_slide"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:background="@null"
android:scaleType="centerInside"
android:src="@drawable/btn_slide"
android:paddingRight="50dp"
android:onClick="toggleMenu"
android:paddingTop="4dp"/>
</RelativeLayout>
或者动态添加action view
RelativeLayout relative = new RelativeLayout(mActionBar.getThemedContext());
mSearchView = new SearchView(mActionBar.getThemedContext());
mSearchView.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.MATCH_PARENT));
mSearchView.setIconifiedByDefault(false);
mSearchView.setGravity(Gravity.LEFT);
relative.addView(mSearchView);
mActionBar.setDisplayShowCustomEnabled(true);
mActionBar.setCustomView(relative);
原文:http://blog.csdn.net/zqx198810/article/details/20937605