Android: лучший способ заполнить активность новыми данными

#android #android-activity #tableview

#Android #android-активность #просмотр таблицы

Вопрос:

у меня возникла следующая «проблема».

Я хочу иметь activity, который показывает мне турнирное положение некоторых команд в определенный игровой день.

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

Каков наилучший способ создать это activity?

  1. соберите весь TableLayout со всеми TableRows и TextViews, дайте им идентификаторы и обновите эти представления через id во время выполнения. Проблема: огромная негибкая жестко закодированная layout.xml
  2. соберите макет во время выполнения, добавьте идентификаторы, обновите с помощью идентификаторов
  3. соберите макет во время выполнения. при обновлении удалите старые представления и создайте новые
  4. соберите макет во время выполнения. при обновлении перезапустите activity

просто хочу знать, какой из них лучший. или есть какой-либо другой способ добиться этого

спасибо Гепард

Ответ №1:

На вашем месте я бы использовал GridView с адаптером. Это позволит абстрагироваться от всей обработки изменений макета. Вам просто нужно беспокоиться о сопоставлении ваших данных с соответствующими представлениями. Этот пример отображает ImageViews в GridView, но нет причин, по которым вы не могли бы отобразить TextViews, содержащие ваши данные в GridView. Кроме того, поскольку вы используете адаптер, вы можете воспользоваться всеми классами Loader и их возможностями асинхронной загрузки.

Кроме того, использование этого подхода позволит вам легко адаптировать программу по мере изменения вашего набора данных. Возможно, в будущем вам захочется добавить в таблицу больше данных, и этот подход позволит вам легко сделать это без необходимости постоянно менять свои XML-макеты.

Комментарии:

1. 1. Не изобретайте велосипед заново — используйте GridView или ListView; множество документации в документах Android.

2. @ShibbyUK сам не мог бы сказать лучше. Это то, к чему я здесь стремлюсь. Не изобретайте велосипед.

Ответ №2:

Меняется ли количество просмотров? Если нет. Лучший способ — использовать уже существующие представления и обновлять их значения. Старайтесь избегать повторного создания / повторного раздувания представлений, поскольку это дорогостоящая задача.

Комментарии:

1. количество строк не более 8, поэтому, если их меньше, я полагаю, я просто могу оставить некоторые текстовые представления пустыми