Я немного новичок в Android и нахожусь в процессе разработки приложения с парой довольно сложных представлений. Одно из представлений предназначено для использования сложного представления, отображающего информацию, связанную с объектами модели и разделенную на несколько различных представлений; навигация по которому должна быть достигнута с помощью скользящих эффектов (то есть скольжение пальца по экрану для перемещения от одного экрана к другому и т. д.). Само представление будет использоваться для размещения нескольких наборов представлений для различных типов объектов модели, но с общей структурой, которая повторно используется между ними всеми. В качестве грубого примера, представление может отображать информацию о человеке (объект модели), отображая несколько подробных представлений: представление общей информации, представление, отображающее список хобби, и представление, отображающее список других людей. связано с их социальной сетью. Тот же общий вид, когда ему дается объект модели, представляющий конкретный автомобиль, дает несколько разных видов: общий вид с деталями, вид, содержащий фотоизображения для этого транспортного средства, вид, представляющий места, где его можно приобрести, и вид, обеспечивающий список связанных автомобилей. (ПРИМЕЧАНИЕ. Это не реальные данные, а общие намерения представления). Подвиды НЕ будут охватывать всю область экрана, и другие функции в пределах представления должны быть как видимыми, так и взаимодействовать с пользователем.
Идея заключается в том, что существует структура общего вида, которая может использоваться повторно и которая будет управлять набором подпредставлений, динамически генерируемых на основе типа объекта модели, переданного в представление.
Я пытаюсь определить подходящий способ использования фреймворка Android, чтобы наилучшим образом добиться этого, не нарушая целостность фреймворка. По сути, я пытаюсь определить, как разбить это увеличенное представление на блоки многократного использования (т. Е. Общий вид, контроллеры подвидов для конкретной модели и отдельные подробные представления). Чтобы быть более конкретным, я пытаюсь определить, лучше ли это представление составлять из нескольких пользовательских классов представления или из нескольких классов Activity. Я видел несколько примеров пользовательских составных представлений, но они, как правило, используются для составления простых представлений без сложных контроллеров и без учета общего жизненного цикла Activity (то есть, при необходимости, хранения и извлечения данных, связанных с объектами модели). С другой стороны, единственный реальный пример, который я видел в отношении представления, состоящего из компоновки Activity, - это сам TabActivity, и его нельзя настроить так, как для этого необходимо.
Есть ли у кого-нибудь какие-либо предложения относительно подходящего способа структурирования моего взгляда для достижения нужной мне среды приложения? Просмотры? Мероприятия? Что-то еще?
Любое руководство будет оценено. Заранее спасибо.