可信赖的Web活动的Android Change Change状态



i基于此存储库我的第一个TWA/PWA应用程序构建。一切正常,但是我无法更改现状栏的颜色。

我修改了此文件,并在<style>标签中添加此行:

<item name="android:statusBarColor">@color/ic_launcher_background</item>

问题是...它在应用程序的第一个初始化中都可以正常工作...但是第一个初始化后500ms启动了WebView,并且statusbarcolor再次是白色的。

知道我如何解决此问题?

更新:支持库(E849E45C90)的最新版本已更新,以使更改状态栏颜色更容易。

SVGOMG样本已更新以使用它,并且在此拉请求中可以看到应用程序使其工作的必要更改。

以下部分已过时,但请留在此处以获取历史上下文

在打开"自定义标签"意图时对状态栏颜色进行自定义,可以更改状态栏颜色。

目前在清单中不可配置,而这样做的主要方法是:

  1. 将启动性从支持库存储库复制到您的项目中。
  2. 将androidmanifest.xml中的参考更改为实现的副本。
  3. 通过用以下代码替换getCustomTabsintent方法来调整您的发射器代码以设置状态栏:
    protected CustomTabsIntent getCustomTabsIntent(CustomTabsSession session) {
        return new CustomTabsIntent.Builder(session)
          .setToolbarColor(Color.parseColor("#FF0000"))
          .build();
    }

上面的代码将创建一个红色状态栏。用欲望颜色替换#FF0000

您应该在androidManifest上添加新的meta-data,在哪里声明了可信赖的Web活动(android.support.customtabs.trusted.status_bar_color)

 <activity android:name="android.support.customtabs.trusted.LauncherActivity">
    <meta-data
        android:name="android.support.customtabs.trusted.DEFAULT_URL"
        android:value="https://your-host.com/" />
    <meta-data
        android:name="android.support.customtabs.trusted.STATUS_BAR_COLOR"
        android:resource="@color/colorPrimaryDark" />
    <intent-filter>
        <action android:name="android.intent.action.VIEW"/>
        <category android:name="android.intent.category.DEFAULT" />
        <category android:name="android.intent.category.BROWSABLE"/>
        <data
            android:scheme="https"
            android:host="your-host.com"/>
    </intent-filter>
</activity>

尝试在onResume()

上添加此代码
public void setStatusBarColor(int color) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
getWindow().setStatusBarColor(color);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, 
WindowManager.LayoutParams.FLAG_FULLSCREEN);
    }
}

相关内容

  • 没有找到相关文章

最新更新