2016-03-18 18 views
10

Android Studioでアンドロイドアプリケーションを作成しましたが、その上にオプションメニューを作成したいと考えています。私は空の活動としてそれを作成し、今私はオプションメニューを取得するために空白の活動を作成していたことがわかった。空のアクティビティでオプションメニューを作成する方法はありますか?誰かが私にチュートリアルを教えることができたら、これは私のメニューのためのコードです。あなたのメニューを膨らませるために必要空のアクティビティにメニューを追加する

menu_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="saveourcar.soc.MainActivity"> 
    <item 
     android:id="@+id/action_Menu" 
     android:orderInCategory="100" 
     android:title="Menu" 
     app:showAsAction="never" > 
    <menu> 
     <item 
      android:id="@+id/instructions" 
      android:title="Instructions" 
      android:icon="@drawable/bg"/> 
     <item 
      android:id="@+id/hotels" 
      android:title="Hotels" 
      android:icon="@drawable/mechanic"/> 

    </menu> 
    </item> 
</menu> 

主な活動

public boolean onOptionsItemSelected(MenuItem item) { 
    // Handle action bar item clicks here. The action bar will 
    // automatically handle clicks on the Home/Up button, so long 
    // as you specify a parent activity in AndroidManifest.xml. 
    int id = item.getItemId(); 

    //noinspection SimplifiableIfStatement 
    if (id == R.id.action_Menu) { 
     return true; 
    } 

    return super.onOptionsItemSelected(item); 
} 

答えて

18

These tutorialsはメニューの使い方を示しています。あなたは、あなたがそれを配置したい活動のためにそれを定義する必要があり、メニューのレイアウトを作るとき

public boolean onCreateOptionsMenu(Menu menu) { 
MenuInflater inflater = getMenuInflater(); 
inflater.inflate(R.menu.menu_menu, menu); 
return true; 
} 
8

次の方法でそれを行う可能性があります。したがって、このような何か、とはmenu_menuより良い名前を選択します。

@Override 
    public boolean onCreateOptionsMenu(Menu menu) { 
     MenuInflater findMenuItems = getMenuInflater(); 
     findMenuItems.inflate(R.menu.main_menu, menu); 
     return super.onCreateOptionsMenu(menu); 
    } 

main_menuはメニューのレイアウト名で、findMenuItemsはオプションの名前です。

あなたはこの必要があります

約メニューのためのあなたのメニューの項目をクリック可能にすると、アプリを終了:

@Override 
    public boolean onOptionsItemSelected(MenuItem item) { 
     switch (item.getItemId()) { 
      case R.id.aboutMenuItem: 
       Intent aboutIntent = new Intent(MainActivity.this, AboutActivity.class); 
       startActivity(aboutIntent); 
       break; 
      case R.id.exitMenuItem: 
       finish(); 
       break; 
     } 
     return super.onOptionsItemSelected(item); 
    } 
関連する問題