Intereting Posts
Пробные тесты и контрольные тесты для андроидов на Jenkins (Gradle) Приложение Phonegap неожиданно останавливается на Indigo под управлением Android ADT 20 Как установить Android Studio на компьютер без подключения к Интернету? Создание объекта местоположения в Android со значениями широты и долготы Гистограмма с использованием ахартангенина Как удалить вкладки ActionBar в альбомной ориентации только для планшетов Android Studio – создайте Android-проект с библиотекой Android, которая зависит от другой библиотеки Android Как связать одно и то же свойство Google Analytics для Android и iOS для AdMob Предупреждение: для запроса без сеанса требуется токен, но отсутствует идентификатор приложения или токен клиента Как зарегистрировать учетную запись разработчика Android для компании? Facebook SDK 4.0 LoginButton – setReadPermissions не работает? Выбор проекта в Run Configurations на Eclipse пуст ADB внезапно не обнаруживает мое устройство больше 1 Keystore для подписывания всех приложений или 1 на приложение? AppBarLayout изменяет смещение программно

Достижение модальной функции просмотра в Android

Моя цель – установить модальное представление в приложении для Android. Я хотел бы открыть одно представление, фон которого будет прозрачным, чтобы пользователь мог видеть вид сзади.

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

благодаря

Вы можете сделать прозрачный вид деятельности в этом стиле:

<style name="TransparentActivity" parent="android:Theme.Black.NoTitleBar.Fullscreen"> <item name="android:windowBackground">@android:color/transparent</item> <item name="android:colorBackgroundCacheHint">@null</item> <item name="android:windowIsTranslucent">true</item> <item name="android:windowAnimationStyle">@android:style/Animation</item> <item name="android:windowNoTitle">true</item> <item name="android:windowContentOverlay">@null</item> <item name="android:windowFullscreen">true</item> </style> 

Объявлено в манифесте так:

  <activity android:label="@string/app_name" android:name=".activity.DialogActivity" android:theme="@style/TransparentActivity" > 

Затем я использую это как макет для моего диалога:

 <?xml version="1.0" encoding="utf-8"?> <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_height="match_parent" android:layout_width="match_parent" android:id="@+id/containerPageContainer"> <FrameLayout android:layout_height="wrap_content" android:layout_width="match_parent" android:background="@drawable/panel_picture_frame_bg_focus_blue" android:layout_gravity="center" android:id="@+id/dialog"/> </FrameLayout> 

Вы можете раздуть другие макеты и добавить их в @+id/dialog или использовать фрагменты (в зависимости от того, насколько вы храбры).

Надеюсь, что это помогло!

Возможно, вы могли бы использовать Dialog ? Вы можете использовать пользовательский просмотр содержимого, чтобы отображать все, что хотите, и использовать setCancelable(false) .