Прозрачная, плавающая активность Android не позволяет обновлять содержимое за ней - PullRequest
3 голосов
/ 17 апреля 2011

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

Я перепробовал каждую комбинацию флагов, которую смог придумать, и на данный момент я предполагаю, что флаги не являются ответом. Может ли кто-нибудь помочь мне найти подходящий код для такой вещи?

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

Ответы [ 3 ]

2 голосов
/ 17 апреля 2011

Насколько я знаю, это невозможно. Должно быть возможно создать действие, используя тему Theme.Dialog или Theme.Translucent (см. http://developer.android.com/guide/topics/ui/themes.html), чтобы любая активность под ним все еще отображалась хотя бы частично. Проблема в том, что действие ниже будет Приостановлено (это onPause сработает, но onStop не сработает), и я не верю, что можно каким-либо образом запустить любой код.

1 голос
/ 17 апреля 2011

Я не исследовал создание прозрачного Activity, но не думаю, что это возможно Activity.Это кажется логичным, поскольку даже если у вас есть прозрачный Activity, он все еще полагается на View внутри него - View создает прозрачную часть, а не Activity.Это означает, что вы, вероятно, получите вместо этого прозрачный View.

Если у вас есть «передний» Activity с прозрачным View, а затем «задний» Activity,«назад» Activity не будет виден пользователю - и это потому, что вы находитесь в другом Activity.

Итак, правильный способ - использовать прозрачный View.

0 голосов
/ 23 ноября 2011

Можно обновить действие, описанное ниже, добавив в него приемник Broadcast и отправляя Broadcast из любого места.

...