Я внедрил setOnClickListener() FAB в MainActivity, и он работает без проблем.
У меня есть 8 разных фрагментов (один показывает WebView, другой загружает RecyclerView и т. д.) на основе выбора из навигационного ящика.
Появляется FAB, и его текущее действие воспроизводит песню по умолчанию, которая работает нормально.
Теперь из моих 8 разных фрагментов 3 фрагмента показывают другой список песен.
Поскольку FAB отображается по умолчанию, я хочу использовать FAB в качестве кнопки воспроизведения.
Итак, если пользователь находится в одном фрагменте, выбирает mp3 и щелкает FAB, он должен воспроизвести эту песню.
Это означает, что я должен каким-то образом перезаписать setOnClickListener MainActivitiy на тот, который реализован во фрагменте.
Точно так же у меня есть еще 2 фрагмента, которые показывают список песен в формате mp3. Выбрав в них mp3 и щелкнув FAB, фрагмент должен прослушивать это действие FAB.
По сути, FAB должен переопределить свои действия и принимать данные от текущего фрагмента.
Один из способов, который я могу придумать, это когда вызывается fab.setOnClickListener, я проверю текущий фрагмент и буду действовать в соответствии с ним.
Но проблема в том, чтобы воспроизвести песню, я создаю Intent со многими параметрами и вызываю startservice.
Если я могу что-то сделать в самом фрагменте, я могу создать намерение, связать необходимые аргументы и т. д. в setOnClickListener().
Любые предложения по устранению моей путаницы высоко ценятся.