Я хочу использовать CastStateListener во фрагменте, чтобы проверить, доступны ли устройства приведения или нет. Код, использованный во Fragment:
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
mCastContext = CastContext.getSharedInstance(mContext)
mCastStateListener = CastStateListener { newState ->
if (newState != CastState.NO_DEVICES_AVAILABLE) {
castDevicesAvailable = true
}
}
}
override fun onResume() {
super.onResume()
mCastContext?.addCastStateListener(mCastStateListener)
}
override fun onPause() {
super.onPause()
mCastContext?.removeCastStateListener(mCastStateListener)
}
Этот код не возвращает мне вызов внутри CastListner при использовании во Fragment, но он прекрасно работает, когда я использую его в Activity или Fragment.
IЯ использую пользовательский вид
<androidx.mediarouter.app.MediaRouteButton
android:id="@+id/media_route_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:actionButtonStyle="@android:style/Widget.Holo.Light.MediaRouteButton"/>
Я хочу скрыть / показать вид на основе доступных устройств приведения