我有一个活动A,它是一个主活动,带有导航菜单和工具栏,托管带有片段的Viewpager。让我们说该viewpager中的片段B通过单击按钮开始使用活动C的意图。
活动C是一个视频播放器活动,需要使用回调触发片段B中的方法,然后片段B调用活动C中的方法。
我知道片段和活动可以使用接口进行通信,但正如您可能理解的那样,活动C不会托管片段B.
那么两者之间可以做这种接口吗?我需要改变我的整体设计吗?
答案 0 :(得分:0)
那么可以在两者之间进行这种接口吗?
这取决于你究竟在做什么,但正如你所写,我会给它一个坚实的“不”。
在您的方案中,显示活动C时,片段B不可见。片段B将被停止(即onStop()
已被调用),因此你真的不应该用它做任何事情。
听起来你需要一个稍微不同的架构,其中需要在片段B和活动C之间共享的组件作为独立的组件存在,独立于片段B和活动C的生命周期。