1

我有一个布局,MainViewHorizontalLayout. MainView启动 a反过来ControllerThread启动其他线程。我的目标是ControllerThread在屏幕被解锁并且HorizontalLayout用户绝对可见之前不启动。

(以下ControllerThread_ctrlr

我首先天真地把_ctrlr.start()'MainView的构造函数。然后我把它放在了onFinishInflation(),但这是在屏幕解锁之前调用的。我最后一次尝试是将它放入onWindowVisibilityChanged()并启动控制器,如果visibility设置为VISIBLE,但即使在屏幕解锁之前也会调用它。我假设这些函数在屏幕解锁之前被调用,因为它们_ctrlr被确认正在运行。

's 中是否有可用的方法View来检查屏幕是否被锁定/解锁?还是我必须使用KeyguardManager

4

1 回答 1

0

根据 blackbelt 的建议,我通过在其中创建一个公共类来将启动线程的调用移至控制器,该类MainView将在调用时启动控制器。在MainActivity我调用的 OnResume 中:

((MainView) findViewById(R.id.mainView)).startController();

ControllerThread解锁屏幕后,直到应用程序实际在模拟器中被拉起,才会启动。

于 2013-01-15T16:17:37.277 回答