Помощь, необходимая для создания макета активности Android - приведен скриншот

Мне нужно создать экран (прокручиваемый), точно такой же, как на скриншоте, показанном здесь. Я понятия не имею, какие шаблоны макетов я должен использовать или какие виджеты мне следует использовать.

Данные, включая ссылки миниатюр, доступны динамически.

Эксперты, помогите с вашими ценными предложениями, советами и помощью.

С нетерпением жду, С уважением, Рони

4 ответа

Решение

Я много работал над Listviews и, глядя на ваш скриншот, я бы посоветовал избегать использования listviews, если вы можете. Если у вас всегда есть постоянный макет, даже если это макет, который вы там показали на скриншоте, я бы сделал макет каждого элемента [только для уникальных] в файле XML и добавлял их динамически по мере необходимости. Хотя я не уверен, как вы хотите, чтобы ваш макет был точно, так что это может быть не очень хорошо, если количество элементов может увеличиться.

Вид, используемый на вашем скриншоте, скорее всего, настроенный ListView. Посмотрите на это.

Полезный источник, который я часто рекомендую, - это проект API Demos.

Я быстро перечислю шаги, которые вам нужно сделать, чтобы достичь своей цели;)

  • Прочитайте основы приложения Android (если еще не сделано)
  • Посмотрите сессию ввода-вывода о ListView или просмотрите соответствующие слайды.
  • Посмотрите на Cursors и ListAdapters (и, возможно, ContentProviders). Блокнот Блокнот может быть полезным. Они понадобятся вам для отображения данных в вашем списке.
  • Узнайте, как создать собственный макет строки списка. По сути, создайте еще один XML-файл макета, представляющий один элемент строки списка; обычно LinearLayout с горизонтальной ориентацией (с миниатюрой, текстом,... в вашем конкретном случае).
  • Повеселись;)

Что лично мне помогло, так это посмотреть исходный код нативного приложения Android Contacts. У него довольно "сложный" список с разделами, значками и т. Д. Либо загрузите исходный код Android, либо просмотрите его здесь.

Видя скриншот, это очень похоже на то, что я испытал. Первоначально я использовал ListView вместе с ArrayAdapter, но в итоге он вызывал у меня головную боль и заставлял меня все время чесать голову. Я не эксперт по разработке Android, но вот как бы я это сделал:

<LinearLayout>
     <!-- Used for the non-scrollable header
          Can be a RelativeLayout if you wish -->
</LinearLayout>

<!-- Scrollable items here -->
<ScrollView>
     <!-- Necessary since ScrollView only accepts one child -->
     <LinearLayout>
          <LinearLayout>
               <!-- This will be the container for the items in your list.
                    You can choose to inflate this layout in your code
                    and use addView to add other child Views you want. -->
               <!-- Views you add here will contain the ImageViews, TextViews
                    for the images and text content -->
          <LinearLayout>
     </LinearLayout>

</ScrollView>

Это сложный вопрос без дополнительной информации.

Лично я не люблю использовать ListView. Если вы можете хранить данные в параллельных массивах или что-то в этом роде, я бы просто использовал цикл for(), добавляя кнопки, TextViews и т. Д. В основной макет.

Другие вопросы по тегам