Плавающий просмотр действий Android

Требование

У меня есть приложение с 2 действиями, скажем, A и B, с навигацией типа A ->Bи B->A(нажатие назад). Мое требование

  • Я хочу, чтобы вид/макет плавал на экране, независимо от того, какой активность в данный момент видна. Я раздуваю это представление в приложении start(onCreate действия A), он остается статичным на экране во время переход от A->B и когда B на экране.
  • Таким образом, естественно, это представление должно увеличиваться только один раз (при запуске приложения, при создании A).

Что я обнаружил

Я поискал, и из того, что я смог найти, есть 2 метода повторного использования макета в Android

  • с помощью

    Это просто похоже на инструмент для написания XML-кода часто используемых элементов пользовательского интерфейса. Он раздувается каждый раз, когда используется в родительском макете.

  • с использованиемViewStub

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

Еще один намек на мое требование.

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

Мои исходные настройки

Я ориентируюсь на Android 2.1 и выше. Кажется, Fragmentдоступен на уровне API 11 (Android 3.0) и выше. Один из вариантов — использовать библиотеку совместимости с Android, которая позволяет использовать Fragmentв более старых версиях. В настоящее время я изучаю это сейчас. Но я также хотел бы знать, есть ли какие-либо другие методы для выполнения моего требования, а не изменять весь мой проект и использовать фрагменты.

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

6
задан Krishnabhadra 15 June 2012 в 07:22
поделиться