这是代表Android中的新开发人员应该提出的问题。
想法是为了深入理解为何如此编写框架。 此外,开发人员还面临着悬而未决的指针,非法状态和此类运行时崩溃的情况,并且他们不知道为什么会发生这种情况。
现在程序员每天都大量使用回调和工厂模式。委托类对象的使用减少了对Singleton类的需求,并减少了C,C ++等语言中的多重继承。
当开发人员了解组件之间基于Handler的消息传递时,他们感到很兴奋。
这些方法中的哪一种更可靠,因为知道Fragment的上下文不应再由其组件使用,或者不再作为其父项的Activity使用:
最好的问候。
答案 0 :(得分:1)
请通过此链接了解片段的生命周期
它表示当您当前的片段(您可以在Application扩展类中使用getter和setter进行跟踪)处于濒死阶段时,getView()
和getActivity()
将返回null
。因此,您不应该使用这些方法,并且要注意所涉及的生命周期回调(同样可以使用常规具体Fragments和Activity类的抽象BaseFragment / BaseActivity子类中的boolean getter和setter进行跟踪)。
答案 1 :(得分:1)
我正在跟踪所有这些方法,以停止使用片段的getView()
。我从逻辑上认为onDestroy()
是最适合此目的的方法。
在此答案中,我以相同的方式使用跟踪器: https://stackoverflow.com/a/52017405/787399
这种继承策略极大地帮助和改善了Activity
和Fragments
生命周期的含义。我实际上已经非常强大,可以拥有未隐式提供的功能:就像您可以处理系统后退(在BaseActivity
方法中,在onBackPressed()
中管理),只要在{ {1}},然后您可以阻止Fragment
调用,直到满足某些条件为止,或者放置back pressed event
,以确定是否要退出当前片段。
快乐编码:-)