Я планирую свое первое настоящее приложение для Android и хочу, чтобы оно было универсальным приложением (для планшета и телефона).Компоновка будет состоять из трех представлений списка, которые заполняются предыдущим представлением списка (список один всегда имеет один и тот же список элементов, список два будет заполняться на основе выбора списка один, список три будет заполняться на основе выбора списка один и два),Как только элемент в списке три будет выбран, информация о нем будет отображена.К вашему сведению, данные находятся в файле XML (иерархия содержания), а детали - это конечные узлы.
Я планирую иметь два макета.Для планшета у меня будет все три вида списка и детали на одном экране.Для телефона я собираюсь, чтобы каждый список занимал весь экран, и когда элемент в выбранном, слайд переход к следующему представлению списка (с навигацией в верхней части для перехода к предыдущему списку, а также информация о том, что выбор(s) были из предыдущих списков).Когда элемент в третьем списке выбран, покажите страницу сведений, на которой также будет кнопка для начала (т. Е. Для возврата к первому представлению списка).
У меня планшет работает хорошопоскольку это самое простое (всего один экран, без переходов) - все в layout / main.xml.У меня также есть разные макеты для экранов разных размеров (layout, layout-large, layout-small, layout-xlarge), каждый из которых на данный момент имеет один и тот же файл main.xml.
Итак, наконец,мой вопрос ... Как я могу использовать один и тот же код для заполнения списков при различном пользовательском опыте?Я вижу два варианта (пожалуйста, добавьте больше / лучше)
Для телефона, если я продолжу иметь один файл макета (main.xml) и просто иметь все три списка идетали друг над другом и с помощью слайд-перехода, показать / скрыть виджеты?(т.е. сначала виден только первый вид списка, второй вид списка скрыт, третий вид списка скрыт, детали скрыты)
Должен ли я иметь один макет XML длякаждый из экранов телефона (main.xml - начальный вид списка, list2.xml, list3.xml и details.xml)?
Чтобы определить, является ли это планшетом или нет, Я планирую использовать код из приложения ввода-вывода Google
Разработка универсального приложения для Android (телефон и планшет)
EDIT (2011/11/ 29)
Найдены некоторые хорошие онлайн-ресурсы, касающиеся Фрагментов:
http://android -developers.blogspot.com / 2011/02 / android-30-fragments-api.html
http://portabledroid.wordpress.com/2011/06/22/25/
http://portabledroid.wordpress.com/2011/06/23/multi-platform-fragments-part-ii/
и сопроводительное видео:
http://www.youtube.com/watch?v=4BKlST82Dtg