我需要MainActivity对象作为Fragment对象中的上下文。
仅在启动应用程序时将MainActivity作为“ this”传递给Fragment-class的自定义构造函数。旋转时,它会通过调用标准的null参数构造函数super.onCreate(savedInstanceState);
在Fragment中创建MainActivity的新实例也不起作用。例如:
MainActivity ma = new MainActivity();
AdapterTasks at = new AdapterTasks(ma,title, subt, imgid);
-> onCreate()之前活动无法使用的系统服务
如何从MainActivity对象获取对Fragment对象的引用?
在内Fragment,只需调用this.getContext()。
或者,当您需要访问父项中的内容时 MainActivity:
MainActivity activity = (MainActivity) this.getActivity(); 两者仅在将Fragment附加到时起作用Activity。一般而言,请this.getContext()防止将太多代码添加到中Activity,而应将其添加到中Fragment。一个人可以做任何事情Fragment,同时让它Activity膨胀。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。