如果我们查看一堆Chromecast应用,我们会发现强制转换按钮会在不同的视图/活动中持续存在。也就是说,当我们在主活动中连接到chromecast,然后输入videoplayer活动时,仍然可以使用强制转换按钮。
以编程方式,这种理想行为的最佳设计是什么?我能想到的是首先开始检测主活动中可用的现有chromecast设备,并继续将此强制转换按钮作为参数传递给我们需要在其中显示投射按钮的其他类。这会有效吗?或者我们在不同的类中是否会有很多重复的代码?你们是如何用这种期望的行为设计你的演员应用程序的呢?
答案 0 :(得分:1)
您不会在活动等之间传递强制转换按钮。您的应用程序基本上只是一个包含多个片段的活动,在这种情况下您不会遇到任何问题,或者如果它有多个活动,则每个活动都会添加投射按钮到其动作栏;首选版本是使用ActionProvider版本,但这不是必需的。更重要的是,如果你有多个活动,你想要保持与每个活动之外的演员相关的状态;因此,使用一个单独的,维持状态是一种很好的方法。
我还建议您查看CastCompanionLibrary(CCL)并尝试使用该库来构建您的演员应用程序(或向现有应用程序添加演员功能),因为该库会处理一个数字重要的演员相关任务。