2016-01-01 66 views
1

我是新開發的Android開發人員,我正在使用ActionBar和Tabs開發應用程序。最近我切換到新的支持庫Toolbar,但工具欄(ActionBar)的標題不是垂直居中,而是操作按鈕正確放置。 Title image支持工具欄標題/菜單垂直中心

同樣的問題發生在欄中的第一個MenuItem(它向上移動了一點)。 Menu image

我的活動來延長AppCompatActivty和佈局是這樣的:

<?xml version="1.0" encoding="utf-8"?> 
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" 
               xmlns:app="http://schemas.android.com/apk/res-auto" 
               xmlns:tools="http://schemas.android.com/tools" 
               android:layout_width="match_parent" 
               android:layout_height="match_parent" 
               android:orientation="vertical" 
               tools:context=".MainActivity"> 

    <android.support.design.widget.AppBarLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content"> 

     <android.support.v7.widget.Toolbar 
      android:id="@+id/action_bar_toolbar" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:minHeight="?attr/actionBarSize" 
      app:theme="@style/ActionBarTheme"/> 

     <android.support.design.widget.TabLayout 
      android:id="@+id/tabs" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:background="@color/colorPrimary" 
      app:tabGravity="fill" 
      app:tabMaxWidth="0dp" 
      app:tabMode="fixed"/> 

     <com.myApp.app.views.widgets.ViewPager 
      android:id="@+id/fragmentPager" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:background="@android:color/white"/> 
    </android.support.design.widget.AppBarLayout> 
</android.support.design.widget.CoordinatorLayout> 

和風格:

<style name="ActionBarTheme" parent="Widget.AppCompat.Toolbar"> 
     <item name="android:textColorPrimary">@color/colorPrimaryDark</item> 
     <item name="colorControlNormal">@color/colorPrimaryDark</item> 
     <item name="android:background">@color/colorPrimary</item> 
    </style> 

有人能幫助我解決這個問題?我搜索了一個解決方案,但什麼也沒找到。

P.S.他們被正確地放置,因爲我用的是默認的操作欄

回答

3

你應該使用android:theme而不是app:theme這裏:

android:theme="@style/ActionBarTheme" 

你的風格應該從操作欄覆蓋得出:

<style name="ActionBarTheme" parent="ThemeOverlay.AppCompat.Dark.ActionBar"> 
... 
</style> 

考慮直接使用ActionBar主題來開始隔離問題。