Итак, каковы преимущества Fragments в Android 3.0?

Может кто-нибудь объяснить конкретные преимущества использования фрагментов? В каких случаях мы должны использовать фрагменты?

Для того, что я понимаю, эта структура:

  • Помогает повторно использовать существующий код - если я реализую функциональность в Фрагменте, то относительно легко отобразить этот фрагмент в нескольких частях моего приложения, когда это необходимо.

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

Есть ли еще эти рамки?

Edit:

Я использую фрагменты довольно широко в более крупном проекте для 3.0-таблеток. Для меня наибольшее преимущество заключалось в том, что, используя фрагменты, я мог разбить логику, которая будет проходить в одной монолитной Деятельности на несколько меньших фрагментов. Большие экраны означают огромные действия, которые трудно читать, понимать (особенно для новых членов команды), разрабатывать и поддерживать. Фрагменты, безусловно, помогли в этом вопросе.

Ответ 1

Есть ли еще эти рамки?

  • Анимированные эффекты доступны при динамическом добавлении и удалении фрагментов с экрана

  • Автоматическое управление стеком BACK, поэтому кнопка BACK может удалять динамически добавленные фрагменты, прежде чем, в конце концов, выйти из действия

  • Интеграция с панелью действий для вкладок, в качестве замены для TabHost

  • Интеграция с панелью действий для навигации на основе списка (действительно a Spinner в панели действий, переключения между различными фрагментами)

  • Несколько проще справляться с изменениями конфигурации setRetainInstance(true)

Также, отвечая на @Jim Blackler:

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

Все предлагаемое фрагментами может, по определению, выполняться с помощью Views, просто потому, что фрагменты построены поверх рамки представления. Однако фрагменты делают более сложные сценарии, связанные с динамическими фрагментами, немного легче IMHO.

Кроме того, фрагменты в сочетании с панелью действий, скорее всего, будут долговременной областью внимания для Google, а это означает, что я ожидаю, что в течение следующих 2-3 выпусков будет проведено значительное количество дополнительной работы в этой области.