首页 > 解决方案 > android应用程序在onStop时如何显示一些内容

问题描述

我有一个简单的问题:当应用程序处于 onStop 状态时,有没有办法显示一些东西,比如进度条?因为我的应用程序进行了大量计算,并且当它实际执行时会继续 onStop 并显示黑屏,最终当计算完成时它会返回正常屏幕。因此,从功能的角度来看,这一切都是正确的,但在美学上却不是那么好。你有什么小费吗?

标签: androidandroid-activityandroid-progressbaractivity-lifecycle

解决方案


所以你基本上想防止你的设备在计算运行时进入睡眠状态?这称为 a 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>

有关更多信息和详细信息,请查看文档


推荐阅读