2015-10-23 87 views
0

我在左側有一個帶抽屜的操作欄。我想在操作欄的右側添加另一個菜單。它可以是三點或一個按鈕或其他任何東西。有沒有辦法做到這一點?
謝謝:)在Android操作欄中創建右側菜單

+0

您的問題是關於如何添加按鈕?如果是這樣,一種解決方案是創建一個自定義佈局到您的操作欄 –

+0

謝謝UDI :) 是的,問題是如何添加一個按鈕。我如何創建這樣的自定義佈局?嘗試添加一個按鈕或抽屜到我現在使用的佈局,但它根本沒有出現 –

回答

0

您可以爲您的ActionBar創建佈局,然後使用類似您的活動如下:

getSupportActionBar().setDisplayShowCustomEnabled(true); 
    getSupportActionBar().setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM); 
    getSupportActionBar().setCustomView(R.layout.custom_action_bar); 

而在你R.layout.custom_action_bar創建你所需要的按鈕。

2

對於你的動作條獲得3點菜單,在您的活動(延伸AppCompatActivity或ActionBarActivity),重寫選項菜單的創建像下面

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    // Inflate the menu; this adds items to the action bar if it is present. 
    getMenuInflater().inflate(R.menu.your_menu, menu); 
    return true; 
} 

如果這R.menu.your_menu是資源項目存在於您的res/menu文件夾中。一個示例菜單資源文件內容

<menu 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" 
     tools:context="your_package.your_activity"> 

    <item 
     android:id="@+id/action_edit" 
     android:orderInCategory="100" 
     android:title="@string/action_edit" 
     app:showAsAction="collapseActionView"/> 

    <item 
     android:id="@+id/action_settings" 
     android:orderInCategory="101" 
     android:title="@string/action_settings" 
     app:showAsAction="collapseActionView"/> 

</menu> 

這將顯示一個菜單,其中包含默認摺疊的兩個選項。要聽取對這些菜單項的點擊,您可以覆蓋onOptionsItemSelected並執行必要的操作

@Override 
public boolean onOptionsItemSelected(MenuItem item) { 
    switch (item.getItemId()) { 
     case R.id.action_settings: 
      //Do something 
      ... 
      return true; 
     case R.id.action_edit: 
      //Do something else 
      ... 
      return true; 
    } 

    return super.onOptionsItemSelected(item); 
} 
+0

感謝您的詳細解答!我嘗試過,但有些原因,其他操作出現在屏幕的底部,而不是菜單:( –

+0

,歡迎您。不要忘記接受答案,如果它解決了您的問題。 – Rajeev

+0

我仍然有問題在屏幕底部顯示3個點而不是在操作欄上任何想法爲什麼會發生這種情況? –