【发布时间】:2014-06-25 22:19:29
【问题描述】:
我需要在 ActionBar 上做两件事:
- 首先是在其右侧添加一张图片。
- 二、隐藏ActionBar标题的icon/logo
结果会是这样的:
为了实现第一个,我正在关注答案here,但它没有将图像放在右侧,它靠近标题。这是从该帖子中提取的代码:
ActionBar actionBar = getActionBar();
actionBar.setDisplayOptions(actionBar.getDisplayOptions()
| ActionBar.DISPLAY_SHOW_CUSTOM);
ImageView imageView = new ImageView(actionBar.getThemedContext());
imageView.setScaleType(ImageView.ScaleType.CENTER);
imageView.setImageResource(R.drawable.ic_launcher);
ActionBar.LayoutParams layoutParams = new ActionBar.LayoutParams(
ActionBar.LayoutParams.WRAP_CONTENT,
ActionBar.LayoutParams.WRAP_CONTENT, Gravity.RIGHT
| Gravity.CENTER_VERTICAL);
layoutParams.rightMargin = 40;
imageView.setLayoutParams(layoutParams);
actionBar.setCustomView(imageView);
这是我的包含布局的图像视图:
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
android:id="@+id/ablogo"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:src="@drawable/ic_launcher" />
</RelativeLayout>
然后,要获得第二件事,就是隐藏默认的标题图标,我只是使用这个:
ActionBar actionBar = getSupportActionBar();
actionBar.setDisplayShowHomeEnabled(false);
这样做,我可以隐藏图标,但选项卡位于操作栏上方,也就是说,操作栏位于选项卡下方。
【问题讨论】: