Скрыть деятельность - PullRequest
       2

Скрыть деятельность

1 голос
/ 28 ноября 2011

Из своей Деятельности я запускаю Намерение (загрузку картинки), а затем жду результата (onActivityResult).

Как я могу скрыть свою Активность, чтобы она могла обрабатывать результат Интентов в фоновом режиме?moveTaskToBack (true) скрывает все приложение, но мне нужно просто вернуться к предыдущему действию без завершения текущего.

Ответы [ 4 ]

3 голосов
/ 28 ноября 2011

Как объясняется в документации Android, Действия предназначены для отображения интерфейса для пользователя:

Деятельность представляет собой один экран с пользовательским интерфейсом.Например, приложение электронной почты может иметь одно действие, которое показывает список новых электронных писем, другое действие для создания электронного письма и другое действие для чтения электронных писем.Несмотря на то, что действия работают вместе для формирования единого пользовательского интерфейса в приложении электронной почты, каждое из них не зависит от других.Таким образом, другое приложение может запустить любое из этих действий (если это позволяет приложение электронной почты).Например, приложение камеры может запустить действие в приложении электронной почты, которое составляет новую почту, чтобы пользователь мог поделиться картинкой.

Я рекомендую прочитать всю статью .

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

1 голос
/ 28 ноября 2011

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

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

1 голос
/ 28 ноября 2011

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

Другим решением будет создание новой службы .Это не то, что рекомендует документация.

0 голосов
/ 06 июля 2012

Если в действии нет представления или элемента, вы можете попытаться установить действие как прозрачное в манифесте:

Android: тема = "@ андроид: стиль / Theme.Translucent"

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