2012-05-05 7 views
0

私はメニューを取得します。メニューが選択されたときに何らかのアクションを実行する方法 誰でも助けてくれます。前もって感謝します。oncreateoptionsmenuのためのアクション

public boolean OnCreateOptionsMenu(Menu menu){ 
    menu.add(1, 200, 0, "snapshot"); 
      menu.add("more"); 
      menu.add("exit"); 
    return super.onCreateOptionsMenu(menu); 
    } 

以下の方法で対応できます。しかし、レイアウトdoesntの負荷以下

public boolean OnOptionsItemsSelected(MenuItem item){ 
    switch(item.getItemId()){ 
    case 200: setContentView(R.layout.main2); 
    return true; 
    } 
    return super.onOptionsItemSelected(item); 

} 

答えて

3

ステップ#1を使用しながら:Javaは大文字と小文字が区別されるように、onCreateOptionsMenu()OnCreateOptionsMenu()の名前を変更します。

ステップ2:Javaでは大文字と小文字が区別されるため、OnOptionsItemsSelected()からonOptionsItemSelected()に名前を変更します。

+0

私はそれを試してみましたが、doesntの仕事 – radish

+0

@radishている:それは数十他の開発者の何千ものために働きます。ここに一つのサンプルがあります:https://github.com/commonsguy/cw-android/tree/master/Menus/Menus – CommonsWare

+1

'Item'の後に' onOptionsItemSelected() 'から小文字の' s'を削除することができませんでした。彼はまだエラーを取得しています。 – vvnraman

2

はい、できます。私は関数名にミスタイプしたと信じています。 このコードは私のために正常に動作します:

public class TestActivity extends Activity { 
    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 
    } 

    @Override 
    public boolean onCreateOptionsMenu(Menu menu) { 
     menu.add(1, 200, 0, "snapshot"); 
     menu.add("more"); 
     menu.add("exit"); 
     return super.onCreateOptionsMenu(menu); 
    } 

    @Override 
    public boolean onOptionsItemSelected(MenuItem item) { 
     switch (item.getItemId()) { 
      case 200: 
       setContentView(R.layout.main2); 
       return true; 
     } 
     return super.onOptionsItemSelected(item); 
    } 
} 
+0

@OverrideをonOptionsItemSelectedの前に使用すると、eclipseでアノテーションを削除するエラーが発生する – radish

+1

@radish:これらのメソッドは、 'Activity'のサブクラスで実装する必要があります。 – CommonsWare

+0

@overrideを使用すると、次のエラーが発生する MjpegSampleタイプのonOptionsItemsSelected(MenuItem)メソッドは、スーパータイプメソッドをオーバーライドまたは実装する必要があります – radish

関連する問題