【问题标题】:Start an activity with FLAG_SHOW_WHEN_LOCKED. The previous activity disappears and slides in again使用 FLAG_SHOW_WHEN_LOCKED 启动活动。上一个活动消失并再次滑入
【发布时间】:2015-04-10 16:55:41
【问题描述】:

我锁定设备屏幕,启动活动LockActLockAct 启动另一个具有SurfaceView 的活动。

如果我不使用SurfaceView<item name="android:windowBackground">@android:color/transparent</item> 添加到活动中,则不会调用surfaceCreatedsurfaceChanged

如果我将<item name="android:windowBackground">@android:color/transparent</item> 添加到带有SurfaceView 的活动中,LockAct 会消失并在仅限Android 5.0 上滑入,如图所示in the video. 它看起来很难看。

如何防止LockAct消失并再次滑入?

我已经尝试过的:

LockAct 的 ActivityOptions

Intent intent = new Intent(getApplicationContext(), LockAct.class);
startActivity(intent, ActivityOptions.makeCustomAnimation(getApplicationContext(), 0, 0).toBundle());

用于 LockAct 的 android:windowAnimationStyle

<style name="NoAnim" parent="@style/AppTheme">
    <item name="android:windowAnimationStyle">@null</item>
</style>

<activity android:name="com.admin.LockAct"
    android:theme="@style/NoAnim" />

用于 LockAct 的 android:windowEnterTransition 和 android:windowExitTransition

<style name="NoAnim" parent="@style/AppTheme">
    <item name="android:windowEnterTransition">@null</item>
    <item name="android:windowExitTransition">@null</item>
</style>

<activity android:name="com.admin.LockAct"
    android:theme="@style/NoAnim" />

这是我的示例 Android 应用的存档:https://www.dropbox.com/s/mc4pzqwc2o8lsej/Sample-Android-Lock.rar?dl=0

【问题讨论】:

    标签: android-activity android-5.0-lollipop


    【解决方案1】:

    设备屏幕锁定时,活动无法顺利启动或结束。我注意到在 Android 5.0 上,但在我的带有 CyanogenMod (Android 4.3.1) 的三星 Galaxy S3 上一切看起来都不错。因此,不同的设备和/或操作系统版本可能会有不同的行为。

    一位同事给了我链接https://stackoverflow.com/a/23022023/1065835,我将使用片段而不是活动。

    【讨论】:

      猜你喜欢
      • 2011-01-18
      • 2013-08-18
      • 1970-01-01
      • 2017-10-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多