android - ListFragment - 如何添加菜单?

标签 android android-layout android-fragments android-listfragment

我有一个 ListFragment,我必须添加一个菜单。这是我的代码: 列表用户菜单:

<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
    android:id="@+id/any_option"
    android:title="In Context Menu" />
</menu>

我的列表 fragment :

@Override
public void onActivityCreated(Bundle savedInstanceState) {
    super.onActivityCreated(savedInstanceState);
    View mFooterView;
    // We need to use a different list item layout for devices older than Honeycomb
    int layout = Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB ?
    android.R.layout.simple_list_item_activated_1:android.R.layout.simple_list_item_1;
    if(getListAdapter()==null){
        // init adapter
        adapter=new UserArrayAdapter(getActivity(),
                MOBILE_OS);
    }
    else{
            adapter.notifyDataSetChanged(); 
        } 

    // set adapter
    registerForContextMenu(getListView());
    setListAdapter(adapter);

}
@Override
public void onCreateContextMenu(final ContextMenu menu, final View v,
final ContextMenuInfo menuInfo){
    menu.clear();
    super.onCreateContextMenu(menu, v, menuInfo);   
    final MenuInflater inflater = getActivity().getMenuInflater();
    inflater.inflate(R.menu.listuser_menu, menu);   
}

但是我看不到我的菜单..为什么?如何注册选择的选项菜单?谢谢!

最佳答案

可以将菜单添加到 fragment 中,在 fragment 中使用以下代码:

@Override
public void onActivityCreated(Bundle savedInstanceState) {
setHasOptionsMenu(true);

@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
super.onCreateOptionsMenu(menu, inflater);
inflater.inflate(R.menu.listuser_menu, menu);
}

使用 setHasOptionsMenu 将允许您的 fragment 显示菜单。

关于android - ListFragment - 如何添加菜单?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14347927/

相关文章:

android - 有没有办法将 paddingEnd 和 paddingStart 与 minSdkVersion <17 一起使用?

android - 什么时候允许将 Context 转换到 Activity?

Android:使用 TextWatcher 删除 EditText 中的字符仍会在建议中显示字符

java - 仅 Switch.setChecked 在显示 fragment 时不起作用?

android - 如何在不从项目中删除的情况下从android中的构建路径中排除lib文件

java - Java 日历与 Android 日历之间有什么区别

java - 使用 Gson 将 JSON 反序列化为对象

android - 没有标题/fragment 的单页 PreferenceActivity?

android - 从背景 fragment 中隐藏进度对话框

Android TextInputLayout 遗留样式