Как построить разборную сетку для приложения Android - PullRequest
0 голосов
/ 07 июня 2018

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

Ознакомление с вариантами построенияЭта сетка, я довольно застрял на том, что лучшее решение может быть:

  • Схема сетки
  • Вид сетки
  • Вид переработчика
  • Другое?

Все три статьи встречаются в статьях, которые я читал, и ни одна из них не выглядит лучше других:

  • Построение единой сетки (столбцы и строки)такой же ширины и высоты, но верхний ряд с столбцами двойной ширины)
  • Создание ячеек в этой сетке с возможностью сгибания
  • Заполнение ячеек либо числовыми, либо «цветными» углами после входа пользователярезультат их раунда

Может ли кто-нибудь объяснить, в чем заключаются существенные различия, или если есть еще один подход, который я не знаю, который может быть полезен для этой цели?Я новичок в Android, поэтому все еще учусь на ходу.Заранее спасибо.

1 Ответ

0 голосов
/ 07 июня 2018

Несколько понятий, прежде чем идти вперед:

Любой компонент виджета / пользовательского интерфейса является представлением.Макет - это ViewGroup, который по существу означает его представление, которое содержит другие представления.Думайте об этом как о контейнере, содержащем дочерние представления.Сама ViewGroup является подклассом представления, то есть имеет все функции представления и некоторые свои собственные.

Теперь вернемся к вашему вопросу:

Представления с данными в Android обычно следуют заБазовый шаблон. Они берут данные из источника и загружают их в адаптер (представьте, что это мост между необработанными данными и тем, что вы видите на экране).Таким образом, listView заполняется с помощью адаптера списка, но также может использоваться listadapter для заполнения других типов представлений (например, GridView в данном случае).

GridView - это просто представление на основе строк / столбцов, что означает, что если вы хотите создать что-то вроде карты показателей, это будет хорошим выбором.

GridLayout - это макет, имеющий свой собственный наборправил о том, как представления могут быть расположены внутри него (например, в простой линейной компоновке элементы должны быть строго расположены один ниже или один рядом с другим).В GridLayout элементы расположены в строках / столбцах, но обратите внимание, что это отдельные элементы представления внутри макета (представьте, что несколько элементов сгруппированы в пространстве), тогда как gridview является своего рода монолитным (так как вы даете ему данные, и они будут отображаться).

Теперь представление переработчика - это концепция, которая обычно используется, когда у вас есть достаточно большой объем данных для отображения (обычно имеет смысл, когда у вас есть данные, которые обычно выходят за пределы экрана).Раньше в Android, когда вы прокручивали свой экран по списку, представление в списке раньше отображалось каждый раз, когда оно появлялось на экране.Сверхурочные это было оптимизировано, так что мы можем перерабатывать представления, которые уже появились на экране, вместо того, чтобы рендерить их заново с нуля (представьте, что это представление списка с очень высокой производительностью).

Что касается вашего приложения, то ясказал бы, с текущей информацией, простое представление сетки должно работать супер, не вдаваясь в представления переработчика и т. д. Если это именно то, что вам нужно, также будет работать просмотр списка с двумя столбцами.

Это хороший учебник по сеткам: https://www.raywenderlich.com/127544/android-gridview-getting-started

и это тоже: https://developer.android.com/guide/topics/ui/layout/gridview

Это хороший учебник по просмотрам списка: https://developer.android.com/guide/topics/ui/layout/gridview

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...