Есть ли ListRowPresenter, который использует VerticalGrid вместо HorizontalGridView?

#android #android-tv #leanback

#Android #android-tv #откат

Вопрос:

Как вы знаете, в библиотеке leanback есть, ListRowPresenter которая представляет свои элементы через HorizontalGridView . (смотрите его источник здесь) Но можем ли мы использовать Presenter VerticalGrid ?

Я хочу, чтобы последняя строка моего BrowseFragment стала прокручиваемой по вертикали (с таким количеством строк, сколько ей нужно, и фиксированным номером столбца!), и вместо setNumRows я бы написал setNumVolumns

Возможно ли это в leanback?


ОБНОВЛЕНИЕ 1: Чтобы использовать presenter в BrowseFragmen t, он должен быть дочерним для RowPresenter . VerticalGridPresenter это не значит, что вы вообще не можете использовать его во фрагменте просмотра. Я ищу что-то подобное, ListRowPresenter которое построено с использованием VerticalGridView . ( ListRowPresenter использует HorizontalGridView )

Комментарии:

1. Вы нашли решение?, вы можете опубликовать его?

Ответ №1:

Да, для этой цели существует вызываемый presenter VerticalGridPresenter . У него есть метод public void setNumberOfColumns(int numColumns) для установки количества столбцов. Если это не соответствует вашим потребностям, вам, вероятно, придется написать пользовательский презентатор.

Комментарии:

1. Чтобы использовать presenter в browsefragment, он должен быть дочерним элементом RowPresenter. VerticalGridPresenter не является, поэтому вы вообще не можете использовать его во фрагменте просмотра. Я ищу что-то подобное ListRowPresenter , которое построено с использованием VerticalGridView. (ListRowPresenter использует HorizontalGridView)

2. Такого понятия не существует. Строка горизонтальна, поэтому все, что расширяется RowPresenter , будет горизонтальным по своей природе. Вы пытаетесь поместить столбец в строку. Он создан не для этого. Вы могли бы достичь этого, написав пользовательский RowPresenter самостоятельно, но это не имело бы особого смысла. Альтернативой может быть создание вашей собственной реализации BrowseFragment с поддержкой сетки под внутренним RowsFragment . Или вы могли бы просто поставить VerticalGridFragment под своим BrowseFragment .

3. Возможно, в этом есть смысл. Представьте, что последняя строка browsefragment заполнена контентом. так что лучше просматривать его по вертикали, чем по горизонтали! Я искал письменное решение где-нибудь, если таковое имеется. В любом случае, спасибо

4. @Салех, Вы пришли к какому-нибудь решению по этому поводу? Я ищу реализацию аналогичного типа. Мы были бы признательны за вашу помощь.