android:windowDisablePreview 的使

2021-01-06  本文已影响0人  秀儿2020

在某些情况下,点击APP图标,可能会有几秒中的延时才会显示APP界面,但是在显示界面之前点击桌面的其他位置是无效的,因为此时APP其实已经启动了,只是没有显示出来而已,这个阶段的界面叫做Activity的预览视图.
出现的原因是因为在style中使用了

<item name="android:windowIsTranslucent">true</item>

或者开启了

<item name="android:windowDisablePreview">true</item>

如果想要APP实现秒开的效果,可以禁用预览视图并且关闭透明视图

<item name="android:windowDisablePreview">false</item>
<item name="android:windowIsTranslucent">false</item>

但是此时还会存在问题:虽然点击图标很快就有响应,但是界面是白色的,此时可借助

        <item name="android:windowSplashscreenContent">@drawable/ic_launcher_foreground</item>

来添加一个过渡页,即可实现秒开的效果。

完整的Activity代码如下所示:

package com.example.myapplication;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        try {
            Thread.sleep(5000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
    }
}

为了现象明显,加了5秒的延时处理。

上一篇 下一篇

猜你喜欢

热点阅读