繁体   English   中英

Cordova - 在发布时隐藏的StatusBar - Android

[英]Cordova - StatusBar hidden at launch - Android

我正在使用Cordova的StatusBarSplashScreen 我希望应用程序启动全屏即状态栏,以便在应用程序启动时隐藏。

deviceready回调中,我正在调用StatusBar.hide() ,稍后我使用StatusBar.show()再次显示状态栏。 这很好用。

问题是当出现启动图像时,状态栏可见。 当设备准备deviceready回调时,状态栏会隐藏。 我甚至尝试在config.xml中将Fullscreen首选项设置为true,但结果是相同的。 Hide at Startup配置也仅与iOS相关。

有没有办法(仅使用Cordova)启动没有状态栏的应用程序并稍后显示?

注意:我正在使用SplashScreen插件来显示启动画面

在中找到MainActivity.java

\\平台\\机器人\\程序\\ SRC \\主\\ java中的\\ com \\ yourpackage \\名称

将其添加到导入部分:

import android.view.WindowManager;

然后将此代码添加到最后一行:

public class MainActivity extends CordovaActivity
{
    @Override
    public void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);

        // enable Cordova apps to be started in the background
        Bundle extras = getIntent().getExtras();
        if (extras != null && extras.getBoolean("cdvStartInBackground", false)) {
            moveTaskToBack(true);
        }
        // [Hyuck] add this two line below    
        getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);
        getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);

        // Set by <content src="index.html" /> in config.xml
        loadUrl(launchUrl);
    }

    // [Hyuck] onStart() is totally new.
    @Override
    public void onStart()
    {
        super.onStart();
        getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
        getWindow().addFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);
    }
}

这是来自Hyuck的片段答案: Ionic 3 - 在初始屏幕显示期间隐藏状态栏

它为我做的工作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM