Стандартные настройки Android TV
При просмотре настроек Android TV и встроенных приложений, таких как YouTube, они используют стандартную компоновку, как показано здесь:
Я не могу найти примеры реализации предпочтений на Android TV и не могу найти вышеупомянутые макеты, на которые есть ссылки ни в одной из библиотек LeanBack и т. Д.
Является ли это "стандартом", который я могу использовать повторно (как обычный Android PreferenceFragment), или мне нужно разработать собственную систему предпочтений?
Первое изображение может быть продублировано с помощью LeanBack "BrowseFragment", но нижнее изображение не может быть реализовано с использованием чего-либо, что я до сих пор нашел.
3 ответа
ОБНОВИТЬ
Новые библиотеки поддержки только что были выпущены. Всем привет GuidedStepFragment
! Это должно быть именно то, что вы искали.
Нет, к сожалению, это представление не предоставляется как отдельный виджет в библиотеке Leanback. Если вы хотите посмотреть сами, смотрите здесь.
Это может быть реализовано довольно легко, но, увы, вы сами по себе.
С тех пор, как был получен ответ на оригинал, появилась библиотека поддержки предпочтений Leanback, которую можно включать и использовать. Смотрите следующую ссылку: http://developer.android.com/tools/support-library/features.html
В частности, вы хотите не только GuidedStepFragment, но и расширить BaseLeanbackPreferenceFragment.
Я нашел этот код в сборке AOSP для Android STB
Он работает для Android 6.0 AOSP, а также с оригинальным Android TV. Дополнительная проверка с resolveActivity()
необходим для не телевизионных устройств.
public static String COMPONENT_TV_SETTINGS = "com.android.tv.settings/com.android.tv.settings.MainSettings";
Intent intent = new Intent();
intent.setComponent(ComponentName.unflattenFromString(COMPONENT_TV_SETTINGS));
if (intent.resolveActivity(getActivity().getPackageManager()) == null) {
intent.setAction(Settings.ACTION_SETTINGS); // Standard settings
}
startActivity(intent);