Android   发布时间:2022-04-28  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了android – 在onCreate之前调用的ListFragment onPrepareOptionsMenu.为什么以及如何修复/绕过?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
好的,所以我有了CameraList,扩展了GalleryList,扩展了ListFragment:
public static class FavoritesList extends GalleryList {

    public static FavoritesList newInstance(int pagE) {
        FavoritesList list = new FavoritesList();

        Bundle args = new Bundle();
        args.puTint("page",pagE);
        list.setArguments(args);

        return list;
    }

    @Override
    public void onCreate(Bundle saveInstanceStatE) {
        super.onCreate(saveInstanceStatE);

        cursor cursor = dbHelper.getGalleries(fav,preferences.get@R_772_10495@ng("sort"+fav,"date desc"));
        listadapter = new Gallerylistadapter(activity,cursor);
        setlistadapter(listadapter);
    }

    ...

    @Override
    public void onCreateOptionsMenu(Menu menu,MenuInflater inflater) {
        super.onCreateOptionsMenu(menu,inflater);
        menu.add(Menu.NONE,8,"Remove All");
    }

    @Override
    public void onPrepareOptionsMenu(Menu menu) {
        super.onPrepareOptionsMenu(menu);

        //listadapter is null the first time this is called...

        if (listadapter != null && listlistadapter.getCount() == 0) {
            menu.findItem(R.id.filter).setEnabled(false);
            menu.findItem(0).setEnabled(false);
        }
        else {
            menu.findItem(R.id.filter).setEnabled(true);
            menu.findItem(0).setEnabled(true);
        }
    }
}

这是问题:onPrepareOptionsMenu在加载此片段之前在onCreate(我初始化listadapter)之前调用,并且在第一次显示选项菜单之前不再调用它!

当声明onPrepareOptionsMenu时,Fragment documentation菜单显示之前被调用,每次显示时都是错误的.

附:我正在使用Android支持库(v4).有任何想法吗?

解决方法

尝试在onCreate()上调用invalidateOptionsMenu().确保在onPrepareOptionsMenu()上检查列表适配器是否为null.

大佬总结

以上是大佬教程为你收集整理的android – 在onCreate之前调用的ListFragment onPrepareOptionsMenu.为什么以及如何修复/绕过?全部内容,希望文章能够帮你解决android – 在onCreate之前调用的ListFragment onPrepareOptionsMenu.为什么以及如何修复/绕过?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。