2015-03-31 44 views
1

当在横向模式中的工具栏中添加后退按钮时,后退按钮不在工具栏的垂直中心。如何实现工具栏垂直中心的后退箭头(向上按钮)

我唯一能做的就是在Android清单:

<activity 
     android:name="tack.hardcode.com.tack.MainActivity" 
     android:label="@string/app_name" 
     android:screenOrientation="landscape"> 

这里是我的工具栏的代码

<?xml version="1.0" encoding="utf-8"?> 
    <android.support.v7.widget.Toolbar 

xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:layout_height="wrap_content" 
android:background="#3F51B5"> 

    </android.support.v7.widget.Toolbar> 

我也有v21.styles实现,我有包括我mainActivity工具栏。

我还应该做什么?

+0

你想实现后退箭头(即上导航)还是要让它处于垂直中心? @KiZo – Pooja 2015-03-31 09:29:10

+0

它已经实现,我只想在app_bar的垂直中心 – KiZo 2015-03-31 09:43:51

+0

你可以发布你的工具栏代码吗?我的意思是XML。 – Pooja 2015-03-31 12:23:10

回答

2

您已将工具栏高度设置为wrap_content导致此问题。 Actionbar纵向高度始终为56dp,横向为48dp。 (适用于移动设备)

如果您将wrap_content设置为工具栏的高度,则纵向和横向都需要相同的高度。所以在肖像模式下,向上按钮保持在中央,而在横向上则上升,空白空间添加到底部。

因此,将工具栏高度更改为android:layout_height="?actionBarSize"。 通过改变它,工具栏在纵向和横向模式下的高度均为actionbar

希望它对你有帮助。我希望你现在清楚。

+0

它的工作原理,非常感谢你,虽然我不明白为什么我使用actionBarSize工具栏? – KiZo 2015-03-31 14:45:41

+0

@KiZo检查更新的答案。我希望它清楚你的困惑。 – Pooja 2015-03-31 14:53:34

+0

哦,现在清楚了,tnx Pooja :)) – KiZo 2015-04-01 07:35:34

0
Toolbar mToolBar = (Toolbar)findViewById(R.id.toolbar); 
    setSupportActionBar (mToolBar); 
    ActionBar actionBar = getSupportActionBar(); 
    actionBar.setElevation (5); 
    actionBar.setDisplayHomeAsUpEnabled(true); 
+0

我已经做了这个,后退按钮仍然不在app_bar的垂直中心。后退按钮工作正常,但我希望它在左侧的垂直中心。现在它在左侧,但不在垂直中心。 – KiZo 2015-03-31 09:40:46