【发布时间】:2016-08-13 13:53:15
【问题描述】:
我在 MainActivity 中实现了一个 FAB 的 setOnClickListener(),它可以正常工作。
根据导航抽屉中的选择,我有 8 个不同的片段(一个显示 WebView,另一个加载 RecyclerView 等)。
FAB 出现,其当前操作正在播放默认歌曲,运行正常。
现在,从我的 8 个不同片段中,3 个片段显示不同的歌曲列表。
由于 FAB 显示为默认值,因此我想将 FAB 用作播放按钮。
因此,如果用户在一个 Fragment 中并选择一个 mp3 并单击 FAB,它应该会播放该歌曲。
这意味着我应该以某种方式覆盖 MainActivitiy 的 setOnClickListener 与 Fragment 中实现的一个。
以同样的方式,我还有其他 2 个片段显示一些 mp3 歌曲列表。通过在其中选择一个 mp3 并单击 FAB,Fragment 应该会监听该 FAB 操作。
基本上,FAB 应该覆盖其操作并从当前 Fragment 获取输入。
我能想到的一种方法是,当fab.setOnClickListener被调用时,我会检查当前的Fragment并按照它来操作。
但问题是播放歌曲,我正在创建一个带有许多参数的 Intent 并调用 startservice。
如果我可以在 Fragment 本身中做某事,我可以在 setOnClickListener() 上创建一个 Intent、捆绑所需的参数等。
非常感谢任何解决我的困惑的建议。
【问题讨论】:
-
把你的解决方案作为答案,而不是在问题中。
标签: android android-fragments floating-action-button fragmentmanager