使用FLAG_SHOW_WHEN_LOCKED启动活动。之前的活动消失并再次滑入

时间:2015-03-16 14:12:21

标签: android-activity android-5.0-lollipop

我锁定设备屏幕,启动活动LockActLockAct启动另一项活动,其中包含SurfaceView

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

如果我使用<item name="android:windowBackground">@android:color/transparent</item>SurfaceView添加LockActLockAct消失并仅在 Android 5.0 上滑动,如图所示in the video.它看起来很难看。

如何防止Intent intent = new Intent(getApplicationContext(), LockAct.class); startActivity(intent, ActivityOptions.makeCustomAnimation(getApplicationContext(), 0, 0).toBundle()); 消失并再次滑入?

我已经尝试过:

LockAct的ActivityOptions

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

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

android:LockAct的windowAnimationStyle

<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:windowEnterTransition和android:LockAct的windowExitTransition

{{1}}

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

1 个答案:

答案 0 :(得分:0)

设备屏幕锁定后,活动未开始或顺利完成。我注意到在Android 5.0上,但在我的三星Galaxy S3上使用CyanogenMod(Android 4.3.1)的一切看起来都不错。因此,不同的设备和/或操作系统版本可能存在不同的行为。

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