我有一个活动-> DashboardActivity我有一个超级活动-> MainActivity我有一个片段-> DashboardFragement
DashboardActivity扩展MainActivity,并且DashboardFragment从DashboardActivity加载
现在在我的片段中,我想使用通过接口进行回调,因此我的DashboardActivity还实现了一个在DashboardFragment中定义的接口,例如RefreshDashboard,并包含一个方法refresh()
签名:
class DashBoardActivity extends MainActivity implements RefreshDashboard
在片段的onAttach中,我这样做:
override fun onAttach(context: Context) {
super.onAttach(context)
if (context is RefreshDashboard)
cont = context
}
稍后,我会执行以下操作:
cont.refresh()
有时此cont为null,因为它引用了父活动---> MainActivity,而我的主要活动未实现RefreshDashboard
有时,这很好用。
据我了解,它应该始终是子活动---> DashboardActivity
我在这里想念什么吗?
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。