如果手机处于亮模式或暗模式,如何使Android初始屏幕的文本和背景颜色发生变化?

问题描述 投票:0回答:1

我已经为此工作了一段时间,很不幸,如果不使用图像,我将无法获得理想的效果。我已经对Stack Overflow和几乎所有地方的内容进行了研究,但仍然找不到能做到这一点的解决方案。除非找到完全符合要求的解决方案,否则请勿将其标记为重复的问题。谢谢

我仍在尝试这样做:

  • 电话处于灯光模式>开机画面具有白色背景,中间带有黑色的ABC字

  • 电话处于暗模式>初始屏幕的背景为黑色,中间的单词ABC为白色

这是我到目前为止的内容:

SplashActivity.cs

namespace Japanese.Droid
{
    [Activity(Label = "Anki+", Theme = "@style/LaunchTheme", MainLauncher = true, NoHistory = true)]
    public class SplashActivity : Activity
    {

styles.xaml

<style name="LaunchTheme" parent="Theme.AppCompat">
    <item name="android:windowBackground">@drawable/splash_screen</item>
    <item name="android:navigationBarColor">#ffffff</item>
</style>

splash_screen.xaml

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@android:color/white"/>
    <item>
        <bitmap android:src="@drawable/splash_logo"
                android:tileMode="disabled"
                android:gravity="center"
                android:layout_gravity="center"/>
    </item>
</layer-list>

splash_screen_night.xaml

<?xml version="1.0" encoding="UTF-8" ?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@android:color/black"/>
    <item>
        <bitmap android:src="@drawable/splash_logo"
                android:tileMode="disabled"
                android:gravity="center"
                android:layout_gravity="center"/>
    </item>
</layer-list>

这使用图像,但是我想用文本来做。

有人知道这样做的方法吗?我已经尽可能地对此进行了研究,向两名Android开发人员寻求帮助,但仍然没人能提出一个简单的解决方案来不使用图像。

[我希望有人可以指出我该如何仅使用文本,而不是我的Xamarin Android应用程序的图像。

android android-studio xamarin xamarin.android
1个回答
0
投票

您是否尝试过使用昼夜主题?您的样式文件中有类似的内容

© www.soinside.com 2019 - 2024. All rights reserved.