2014-09-21 39 views
0

是我的菜單:Android的如何對齊動作條菜單及navigationDrawer

<item 
    android:id="@+id/search" 
    android:icon="@drawable/ic_action_search" 
    android:orderInCategory="2" 
    android:title="@string/search" 
    yourapp:showAsAction="always|withText"/> 
<item 
    android:id="@+id/newadd" 
    android:icon="@drawable/ic_action_new" 
    android:orderInCategory="3" 
    android:title="@string/newadd" 
    yourapp:showAsAction="always|withText"/> 
<item 
    android:id="@+id/sort" 
    android:icon="@drawable/ic_action_sort_by_size" 
    android:orderInCategory="1" 
    yourapp:showAsAction="always"/> 

當我運行的應用程序,他們的所有3個都在動作條的右側,我怎樣才能讓他們移動到操作欄的左側?

另外,我有一個navigationDrawer,圖標在左側,我想將它移動到右側,我該怎麼做?

我的操作欄上沒有任何搜索。

我該怎麼做?

感謝

回答

1

您可以使用動作條自定義視圖

ActionBar mActionBar = getActionBar(); 
View mCustomView = mInflater.inflate(R.layout.custom_actionbar, null); 
mActionBar.setCustomView(mCustomView); 
mActionBar.setDisplayShowCustomEnabled(true); 

動作條XML

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:padding="@dimen/activity_horizontal_margin" > 

    <ImageView 
     android:id="@+id/imageView1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentLeft="true" 
     android:src="@drawable/ic_launcher" /> 

    <ImageView 
     android:id="@+id/imageView2" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_centerVertical="true" 
     android:layout_toRightOf="@+id/imageView1" 
     android:paddingLeft="12dp" 
     android:paddingRight="12dp" 
     android:src="@drawable/ic_launcher" /> 

    <ImageView 
     android:id="@+id/imageView3" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_centerVertical="true" 
     android:layout_toRightOf="@+id/imageView2" 
     android:paddingLeft="12dp" 
     android:paddingRight="12dp" 
     android:src="@drawable/ic_launcher" /> 

</RelativeLayout> 

設置這些方法動作條,使抽屜式導航欄主頁圖標可見

getActionBar().setBackgroundDrawable(
        new ColorDrawable(Color.parseColor("#56B1D8"))); //$NON-NLS-1$ 
      LayoutInflater inflator = (LayoutInflater) this 
        .getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
      ActionBar actionBar = getActionBar(); 
      getActionBar().setDisplayShowCustomEnabled(true); 
      actionBar.setDisplayShowTitleEnabled(false); 
      // actionBar.setDisplayUseLogoEnabled(false); 
      actionBar.setDisplayHomeAsUpEnabled(true); 
      actionBar.setDisplayUseLogoEnabled(false); 
      actionBar.setDisplayShowHomeEnabled(false); 
      // getActionBar().setIcon(R.drawable.ic_navigation_drawer); 
      // navigation icon on actionbar 
      actionBar.setHomeButtonEnabled(true); 
      actionBar.setIcon(null); 
+0

Iv'e試過,Custom_actionbar佈局應該是什麼內容?在actionbar和navigationDrawer上製作3個圖像按鈕? – mohsen 2014-09-21 06:34:14

0

假設你是一個從右到左的閱讀器,並試圖支持這樣。至於整個應用程序,我相信它會從您的設備選擇的語言和語言環境中獲得提示。強制從右到左? IDK如何做到這一點,但是如您所描述的那樣翻轉操作欄,我懷疑這就是您要做的。

除了只是確保你使用startendleftright其他路線。開始和結束都會尊重您的設備設置,左側和右側不會。

+0

你能給我一個例如?我應該在哪裏開始和結束與左側和右側? – mohsen 2014-09-21 06:34:59

+0

任何使用對齊或重力的地方。 – 2014-09-21 11:56:32