我锁定设备屏幕,启动活动LockAct
。 LockAct
启动另一项活动,其中包含SurfaceView
。
如果我没有将<item name="android:windowBackground">@android:color/transparent</item>
添加到SurfaceView
的活动中,则不会调用surfaceCreated
或surfaceChanged
。
如果我使用<item name="android:windowBackground">@android:color/transparent</item>
向SurfaceView
添加LockAct
,LockAct
消失并仅在 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
答案 0 :(得分:0)
设备屏幕锁定后,活动未开始或顺利完成。我注意到在Android 5.0上,但在我的三星Galaxy S3上使用CyanogenMod(Android 4.3.1)的一切看起来都不错。因此,不同的设备和/或操作系统版本可能存在不同的行为。
一位同事给了我https://stackoverflow.com/a/23022023/1065835链接,我将使用片段代替活动。