Android 在Fragment中对Menu的操作
来源:互联网 发布:美军战斗力知乎 编辑:程序博客网 时间:2024/06/05 00:52
转载请注明出处,谢谢合作!
http://blog.csdn.net/JeterPong/article/details/52841386
最近,项目有用到Fragment对Menu的操作使用,发现并不能像Activity中那样直接使用。需要在oncreat方法中添加一行代码,才会被调用出来。
为此从网上查了一下资料,整理了一下,以便下次的使用和记忆。
Android4.0之后引入了fragment的概念,它的生命周期函数和activity几乎一样。对菜单的操作也是通过onCreateOptionMenu()实现的。
fragment可以通过实现 onCreateOptionMenu() 提供菜单项给activity的选项菜单。为了使这个方法接收调用,无论如何, 你必须在 onCreate() 期间调用 setHasOptionsMenu() 来指出fragment愿意添加item到选项菜单(否则, fragment将接收不到对 onCreateOptionsMenu()的调用)。
在Activity中是这样使用的:
public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.main, menu); return true; }
而在Fragment中使用时是这样的:
@Override public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { super.onCreateOptionsMenu(menu, inflater); inflater.inflate(R.menu.fragment_main,menu); }
多了一个形参:MenuInflater inflater
返回值为空
并且之后要在Fragment中的oncreat方法中调用这一行代码:
setHasOptionsMenu(true);//添加这行代码
@Nullable @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { view = inflater.inflate(R.layout.fragment_feedback, null); setHasOptionsMenu(true);//需要添加这行代码 return view; }
参考资料:http://blog.csdn.net/momo906/article/details/36190099
http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2013/0104/777.html
- Android 在Fragment中对Menu的操作
- Fragment对menu菜单的操作
- Fragment对menu菜单的操作
- 【android】在fragment中使用option menu
- android: 在fragment中添加actionbar, menu
- 在Fragment中使用Menu
- Android 在Fragment或activity中显示与隐藏Menu的菜单
- android:showAsAction menu在xml中设置 以及对actionbar 的设置点击
- Android同一Activity中不同Fragment设置不同的menu(ViewPager+Fragment)
- Android开发,Slidingmenu+Fragment框架中,通过menu切换不同Fragment卡顿的解决方法
- Fragment中使用menu的方法
- Fragment中Toolbar的Menu创建过程
- Android中对menu、home、back键的监听
- Android中对menu、home、back键的监听
- Android中对menu、home、back键的监听
- fragment中使用menu
- 在android中对关系型数据库的操作
- 在Android中对文件的读写操作
- 给TextView加上多彩效果:改变部分字体的大小和颜色
- c++::让你足够了解构造函数和this指针
- 栈的压入、弹出序列
- 大数据Spark “蘑菇云”行动第61课: 广告点击系统时间管理和数据库分层
- Matlab的数据操作
- Android 在Fragment中对Menu的操作
- PHP魔术常量常量(预定义常量)
- Android Parcelable和Serializable的区别
- bzoj 3563: DZY Loves Chinese 并查集+乱搞
- php基础(五)
- selenium(java)之操作vedio,audio
- Eclipse中导入外部jar包
- Xcafe:Netty实现兼容SpringMVC的Web容器
- 2016年10月17日 学习笔记