Какова «наилучшая практика» для перехода с «Действий» на «Фрагменты» для приложений Android?

#android #android-activity #android-fragments #android-3.0-honeycomb

#Android #android-активность #android-фрагменты #android-3.0-honeycomb

Вопрос:

Я пишу приложение для платформы Android. Приложение уже почти написано для версии 2.x, но я хочу сделать его также для версии Honeycomb. Как вы знаете, в Honeycomb для целевой вкладки используются «Фрагменты», а не «Действия».

В моем приложении около 30 действий, и оно должно быть изменено на фрагменты. Это может быть очень трудным словом для меня, поэтому я хочу знать «наилучшую практику» по этому поводу.

Спасибо.

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

1. Привет, вы нашли подходящее решение? Или это случай копирования кода в отдельную базу кода и ручного изменения действий на фрагменты?

Ответ №1:

На самом деле это не 100% ответ, а просто мой личный опыт на данный момент (и, пожалуйста, поправьте меня, кто-нибудь, если я что-то не так понял — я все еще новичок в Android):

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

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

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

Что я нашел приятной особенностью, так это то, что теперь вы можете очень легко «закрыть» свое приложение. В моем случае у меня есть только одно действие, поэтому простое «завершение» изящно завершает работу всего приложения. Я знаю, что это не «Android-способ» справиться с жизненным циклом приложения. Однако, хотя я не пропускаю кнопку «закрыть» на своем телефоне Android (хотя некоторые приложения, особенно игры, предлагают ее) Я снова и снова ловлю себя на том, что ищу что-то подобное в Honeycomb. (Вероятно, это потому, что графический интерфейс напоминает одно из настольных приложений.)

В любом случае, короче говоря: я бы рекомендовал переосмыслить ваше приложение для планшета. Там действительно есть СВОБОДНОЕ место, поэтому это выглядит странно, если вы не используете его должным образом. Что это значит для вашего приложения, я не знаю — это, очевидно, зависит от того, что это за приложение. Некоторые действия, которые вы, вероятно, сможете использовать просто как фрагменты, некоторые сольются с другими, некоторые могут стать ненужными.

Итак, я думаю, вам следует решить, прежде всего, действительно ли ваше приложение имеет смысл на планшетах. Если нет, вы могли бы просто выполнить небольшие приемы «оптимизации» (например, применить голографическую тему и, возможно, новые макеты / ресурсы). Что касается всего остального, я бы подождал версии 4.0 / Ice Cream Sandwich, поскольку тогда вы сможете использовать фрагменты как на смартфоне, так и на планшете.