2017-01-18 2 views
0

В настоящее время я пытаюсь подключить мобильное приложение Android к Android-телевизору. У меня есть RecyclerView, который, кажется, правильно отображается в моем приложении Android TV. Но, похоже, я не могу перемещаться внутри RecyclerView с помощью элементов управления dpad. P.S я попробовал следующее line.Couldn't найти что-нибудь ещеPort Recycler view, созданный для мобильного приложения, для Android-телевизора, поддерживающего элементы управления Dpad

 android:descendantFocusability="afterDescendants" 

также было рекомендовано использовать вид ресайклер для телевизионных приложений?

Также я прочитал полную архитектуру телевизионного приложения на developer.android.com, а также просмотрел их образец проекта, но не нашел ресайклеров в никуда.

+0

Сделать элементы recyclerview focusable – ULazdins

+0

Я добавил эту строку android: descendantFocusability = "afterDescendants" не работает –

+0

* children * of recycle view должен быть сфокусирован. – ULazdins

ответ

0

Как указано в заявлении @ULazdins, вы можете попытаться сделать ваш RecyclerView привлекательным. Вы можете обратиться к этому workaround за bug с RecycleView скроллинг с фокусом при навигации с помощью d-pad.

Как я могу видеть из источника, проблема в том, что GridLayoutManager использует реализацию LinearLayoutManager «х onFocusSearchFailed(), который вызывается, когда фокус приближается к внутренней границе RecyclerView. Реализация LinearLayoutManager предлагает только первый/последний (зависит от направления прокрутки). Следовательно, фокус переходит к первому/последнему элементу новой строки.

Надеюсь, это поможет!

Смежные вопросы