问题描述
我有一个简单的问题:当应用程序处于onStop状态时,是否可以显示某些东西,例如进度条? 因为我的应用程序执行了大量计算,并且在实际执行时会在onStop上显示黑屏,所以最终在完成计算后,它将返回到正常屏幕。 因此,从功能的角度来看,这都是正确的,但从美学角度来看,它并不是很好。 你有小费吗?
解决方法
因此,您基本上想在计算运行时阻止设备进入睡眠状态吗?这称为WakeLock
,它基本上可以防止您的活动关闭屏幕。请谨慎使用,以免耗尽用户的电池电量。
以编程方式执行此操作非常容易:
class MainActivity : Activity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
window.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON)
}
}
或者您可以向要显示的视图添加xml属性:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:keepScreenOn="true">
...
</RelativeLayout>
有关详细信息,请访问look at the documentation