2014-01-26 74 views
1

我有一個應用程序與自定義樣式的動作欄。在操作欄中,我只有按鈕。所以我想在左側的操作欄上有一個按鈕,在操作欄的中央有一個按鈕,在操作欄上有一個按鈕。我如何對齊它們?動作欄對齊按鈕

回答

2

這可能會幫助你...

設計一個佈局是這樣的...

activity_main.xml中

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:id="@+id/actionBarLayout" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    tools:context=".MainActivity" > 

    <Button 
     android:id="@+id/leftButton" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentLeft="true" 
     android:layout_centerVertical="true" 
     android:text="Left" /> 

    <Button 
     android:id="@+id/centerButton" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_centerInParent="true" 
     android:text="Center" /> 

    <Button 
     android:id="@+id/rightButton" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentRight="true" 
     android:layout_centerVertical="true" 
     android:text="Right" /> 

</RelativeLayout> 

與此佈局添加到ActionBar像這樣...

ActionBar actionBar = getActionBar(); 
    actionBar.setDisplayHomeAsUpEnabled(false); 
    actionBar.setDisplayShowCustomEnabled(true); 
    actionBar.setDisplayShowHomeEnabled(false); 
    actionBar.setDisplayShowTitleEnabled(false); 
    actionBar.setDisplayUseLogoEnabled(false); 

    View view = LayoutInflater.from(actionBar.getThemedContext()).inflate(R.layout.activity_main, null); 
    ActionBar.LayoutParams layoutParams = new ActionBar.LayoutParams(ActionBar.LayoutParams.MATCH_PARENT, ActionBar.LayoutParams.WRAP_CONTENT); 
    view.setLayoutParams(layoutParams); 
    actionBar.setCustomView(view);