1

我有个问题。此代码在我的 nexus 10 android 4.2.1 上运行良好。但是在 AVD android 2.3 上它给了我

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

所以我有两个导航选项卡,每个选项卡有两个片段。

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(Menu menu, MenuInflater inflater)

这个方法已经带了 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 回答