如何调整Android ActionBar向上按钮与屏幕左侧的距离

 我来答
huanglenzhi
2016-03-15 · 知道合伙人数码行家
huanglenzhi
知道合伙人数码行家
采纳数:117538 获赞数:517199
长期从事计算机组装,维护,网络组建及管理。对计算机硬件、操作系统安装、典型网络设备具有详细认知。

向TA提问 私信TA
展开全部
可行的解决办法是:
(1) 我想到的最直接的办法是重新切一张图,理由如下:
Google官网给出的“左向箭头”的material icon,就包含上下左右间距:
(2) 看你的代码,你已经为action bar提供了自定义的布局R.layout.my_booking_actionbar,为什么不做的彻底一些呢?放弃使用android提供的Home键android.R.id.home作为UpIndicator。

而是在这个布局中添加一个ImageView,这样就可以自定义你需要的间距离。然后实现ImageView.OnClickListener,点击时返回父activity。
private void initActionBar() {
ActionBar actionBar = getActionBar();
actionBar.setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM);
actionBar.setCustomView(R.layout.actionbar_crime_fragment);
View actionView = actionBar.getCustomView();

ImageView upButton = (ImageView) actionView.findViewById(R.id.actionBarUp);
upButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// Providing Up Navigation,提供了一种返回父Activity的方法,
// 同时需要在manifest中增加元数据标签,来定义它的父Activity;
// 详情请参考以下链接,
// http://developer.android.com/training/implementing-navigation/ancestral.html
if (NavUtils.getParentActivityName(CrimePagerActivity.this) != null) {
NavUtils.navigateUpFromSameTask(CrimePagerActivity.this);
}
}
});
}

ActionBar的自定义布局文件actionbar_crime_fragment.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >

<ImageView
android:id="@+id/actionBarUp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:layout_marginLeft="4dp"
android:background="@drawable/ic_keyboard_arrow_left_white_24dp"
android:contentDescription="@string/app_name"
android:scaleType="fitXY" />

<TextView
android:id="@+id/actionBarTitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:textAppearance="?android:attr/textAppearanceMedium" />

</RelativeLayout>

Done.
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式