Как заставить окно активности оставаться всегда на вершине - PullRequest
6 голосов
/ 27 ноября 2010

Я хочу создать действие, которое всегда будет на вершине (например, модальные окна или диспетчер задач в Windows) других действий. Как я могу сделать это на Android? Спасибо

Ответы [ 3 ]

10 голосов
/ 28 мая 2013

Вы можете использовать следующий код в переопределенном методе onStop своей активности:

@Override
protected void onStop(){
    super.onStop();
    Intent intent = new Intent(this, ClassNameOfYourActivity.class);
    startActivity(intent);
}

Проблема красоты: ваша активность снова всплывет, если какая-либо другая деятельность пытается получить фокус.Так что это не модальное окно.

И это опасно!Вы не сможете обрабатывать графический интерфейс Android, вы сможете управлять только графическим интерфейсом приложения.Например, включить-выключить режим отладки, убить приложение (только через ADB), достичь системных настроек и т. Д. Будет невозможно.Если вы отключите ADB и объедините его с механизмом автозапуска, вы окажетесь в ловушке.

Так что вы не будете популярны, если поделитесь им с Play:)

4 голосов
/ 15 октября 2012

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

Приложения, такие как Super Video клиент & Плавающие заметки могут отображать плавающие окна над другими действиями. Эти вопросы могут указать вам правильное направление:

4 голосов
/ 27 ноября 2010

Вы не можете. Как это определено в системе Android.

...