当手机处于睡眠状态时,我想要一个动画活动(很像手机铃声动画)。
我已经阅读了很多关于使用 WindowManager 标志打开屏幕的帖子,所以我所做的就是将这段代码添加到我的活动的 onCreate() 函数中:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
this.getWindow().setFlags(
WindowManager.LayoutParams.FLAG_FULLSCREEN |
WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED |
WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON,
WindowManager.LayoutParams.FLAG_FULLSCREEN |
WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED |
WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON
);
setContentView(R.layout.act_image_activity);
startAnimation();
}
我的问题是:
- 动画以小的延迟开始;当屏幕打开时,我可以看到键盘保护(或禁用键盘保护时的主屏幕),然后我的活动开始。
- 调用我的活动的完成()方法后,手机不会立即进入睡眠状态,而是重新启动睡眠计时器。
有人可以告诉我如何让我的动画活动在屏幕打开后立即显示,并在完成后立即关闭屏幕?