1

私は問題があります。このコードは、私の nexus 10 android 4.2.1 で正常に動作します。しかし、AVD android 2.3では、それは私に与えます

NullPointerException com.example.training.ContentFragment.onCreateOptionsMenu(ContentFragment.java:97)

したがって、1 つのタブにそれぞれ 2 つのフラグメントを持つ 2 つのナビゲーション タブがあります。

public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
    // Inflate the menu; this adds items to the action bar if it is present.
    activity.getSupportMenuInflater().inflate(R.menu.trainings_menu, menu);
    super.onCreateOptionsMenu(menu, inflater);
}

誰かがこれで私を助けることができますか?

4

3 に答える 3

2

onCreateOptionsMenu(メニュー メニュー、MenuInflater インフレータ)

このメソッドはすでに MenuInflater 参照を持っています。呼び出す必要はありません。単に提供されたものを使用してください。

@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
    super.onCreateOptionsMenu(menu, inflater);
    inflater.inflate(R.menu.activity_main, menu);
} 
于 2013-01-31T08:08:25.670 に答える
1

public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) の Menu と MenuInflater は、Sherlock パッケージのものである必要があります。com.actionbarsherlock.view.Menu および com.actionbarsherlock.view.MenuInflater

于 2013-01-31T07:45:24.067 に答える
0

これを試して:

public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
    //first call the parent to default behavior
    super.onCreateOptionsMenu(menu, inflater);        
    // Inflate the menu; this adds items to the action bar if it is present.
    activity.getSupportMenuInflater().inflate(R.menu.trainings_menu, menu);
}

メニュー インフレータは既にパラメータとしてメソッドに渡されています。

それが役に立てば幸い。

于 2013-01-31T08:13:11.993 に答える