У меня проблема с фокусом RowsFragment Android Leanback. Я добавляю два разных типа адаптеров в один и тот же RowsFragment (прикрепленный код ниже), но при нажатии кнопки вверх (кнопка вверх DPad на пульте телевизора), чтобы сфокусироваться на строке выше, фокус переходит на верхнюю панель навигации.
//Мой пример кода -
MyRowFragment extends RowsFragment
{
private SparseArrayObjectAdapter myRowsAdapter;
@Override
public void onViewCreated (View view, Bundle savedInstanceState){
super.onViewCreated(view, savedInstanceState);
loadDataRows();
}
private void loadDataRows() {
// got some logic to download data
for (MyDataType data : MyDataTypeList) {
ArrayObjectAdapter rowAdapter;
//conditionToCheck is boolean to check some condition
if (conditionToCheck) {
rowAdapter =
new ArrayObjectAdapter(new MyCustomPresenter(value, value1));
} else {
rowAdapter =
new ArrayObjectAdapter(MyCustomPresentor1(value, value1));
}
rowAdapter.add(data);
myRowsAdapter.set(rowKey, new ListRow(rowAdapter));
}
}
}
И мой файл макета:
<com.github.ksoichiro.android.observablescrollview.ObservableScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scrollbars="none">
<FrameLayout
android:id="@+id/rowsContainer"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
</LinearLayout>
</com.github.ksoichiro.android.observablescrollview.ObservableScrollView>