【Android】嵌套Fragment无法接收onCreateOptionsMenu事件的问题

简介:

补充说明:

如果通过缓存Fragment手动调用二级Fragment,可能会出现莫名其妙的问题,比如更多Menu不显示。

解决办法:

在一级Fragment中添加Menu,可以在一级onOptionsItemSelected中手动调用二级的此方法来处理相关事件。

示例代码:

    @Override
     public  void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
         switch (getSelectedPosition()) {
         case 1:
            inflater.inflate(R.menu.menu1, menu);
             break;
         case 2:
            inflater.inflate(R.menu.menu2, menu);
             break;
         case 0:
         default:
            inflater.inflate(R.menu.menu3, menu);
             break;
        }
    }

    @Override
     public  boolean onOptionsItemSelected(MenuItem item) {
        Fragment fragment = getFragmentByPosition(getSelectedPosition());
         if (fragment !=  null)
            fragment.onOptionsItemSelected(item);
         return  super.onOptionsItemSelected(item);
    }

代码说明:

示例代码是一级Fragment,getFragmentByPosition返回的是二级Fragment。

相关文章:

【Andorid X 项目笔记】嵌套Fragment的使用(5) 

本文转自博客园农民伯伯的博客,原文链接:【Android】嵌套Fragment无法接收onCreateOptionsMenu事件的问题,如需转载请自行联系原博主。


目录
相关文章
|
3月前
|
Android开发
Android面试高频知识点(1) 图解Android事件分发机制
Android面试高频知识点(1) 图解Android事件分发机制
|
3月前
|
缓存 前端开发 Android开发
Android实战之如何截取Activity或者Fragment的内容?
本文首发于公众号“AntDream”,介绍了如何在Android中截取Activity或Fragment的屏幕内容并保存为图片。包括截取整个Activity、特定控件或区域的方法,以及处理包含RecyclerView的复杂情况。
35 3
|
3月前
|
Android开发
Android面试高频知识点(1) 图解 Android 事件分发机制
Android面试高频知识点(1) 图解 Android 事件分发机制
56 1
|
3月前
|
XML 前端开发 Android开发
Android面试高频知识点(1) 图解Android事件分发机制
Android面试高频知识点(1) 图解Android事件分发机制
Android面试高频知识点(1) 图解Android事件分发机制
|
3月前
|
Android开发
Android 事件分发机制详细解读
Android 事件分发机制详细解读
48 5
|
5月前
|
图形学 Android开发
小功能⭐️Unity调用Android常用事件
小功能⭐️Unity调用Android常用事件
|
5月前
|
Android开发
Android面试高频知识点(1) 图解 Android 事件分发机制
在Android开发中,事件分发机制是一块Android比较重要的知识体系,了解并熟悉整套的分发机制有助于更好的分析各种点击滑动失效问题,更好去扩展控件的事件功能和开发自定义控件,同时事件分发机制也是Android面试必问考点之一,如果你能把下面的一些事件分发图当场画出来肯定加分不少。废话不多说,总结一句:事件分发机制很重要。
209 9
|
5月前
|
开发工具 Android开发
Android项目架构设计问题之组件A通知组件B某个事件的发生如何解决
Android项目架构设计问题之组件A通知组件B某个事件的发生如何解决
48 0
|
7月前
|
设计模式 Android开发
44. 【Android教程】广播接收器:Broadcast Receiver
44. 【Android教程】广播接收器:Broadcast Receiver
184 2
|
7月前
|
XML Android开发 数据格式
37. 【Android教程】基于监听的事件处理机制
37. 【Android教程】基于监听的事件处理机制
106 2

热门文章

最新文章