在Xamarin窗体Android启动屏幕中使用两个图像
我是Xamarin Forms跨平台开发的新手。我想实现类似Whatsapp的启动屏幕。见下文 使用我现有的代码,我无法在启动屏幕中使用两个不同的图像。遵循普通的闪屏教程,能够用单个图像生成简单的闪屏。 这里是我的Splash.XMl(主题文件)中的一段代码在Xamarin窗体Android启动屏幕中使用两个图像,android,visual-studio,xamarin,xamarin.forms,xamarin.android,Android,Visual Studio,Xamarin,Xamarin.forms,Xamarin.android,我是Xamarin Forms跨平台开发的新手。我想实现类似Whatsapp的启动屏幕。见下文 使用我现有的代码,我无法在启动屏幕中使用两个不同的图像。遵循普通的闪屏教程,能够用单个图像生成简单的闪屏。 这里是我的Splash.XMl(主题文件)中的一段代码 我使用了两种不同的,但没有成功。请帮忙。提前谢谢。你能试试这个吗 <?xml version="1.0" encoding="UTF-8" ?> <layer-list xmlns:android="http://sc
我使用了两种不同的
,但没有成功。请帮忙。提前谢谢。你能试试这个吗
<?xml version="1.0" encoding="UTF-8" ?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<color android:color="@android:color/white" />
</item>
<item>
<bitmap
android:src="@drawable/xamarin_small"
android:gravity="center"/>
</item>
<item android:bottom="40dp">
<bitmap
android:src="@drawable/microsoft"
android:gravity="center_horizontal|bottom"/>
</item>
</layer-list>
有了上面的代码,我可以将这两幅图像显示为发射器背景的一部分
希望这有帮助。-
如果您想在一个启动屏幕中显示两幅图像,请按照@pinedax的回答进行操作。然而,如果你想有两个完全不同的启动屏幕,那么这是一个单独的问题。您提供的两个屏幕截图是针对两个主题的-亮和暗。从Android 10(API级别29)开始,谷歌发布了智能手机的黑暗模式。你可以阅读更多关于它的内容
因此,您需要的是有两个单独的启动屏幕XML,并让系统根据手机的首选主题加载它们。
在Resources/drawable文件夹中,您可以创建2个文件:
splash_screen.xml
:
splash\u screen\u night.xml
看一看颜色和图像-第一个xml带有白色背景和深色徽标,第二个xml用于深色模式-黑色背景和浅色徽标
之后,您需要在资源中创建一个新文件夹-values-night
。
在那里,您将有一个以上的style.xml
文件。现在您将有2个style.xml
文件-一个在Resources/values中,另一个在Resources/values中
注意:注意大小写,因为这些文件夹和文件区分大小写
在Resources/values/styles.xml中,您可以如下设置启动主题:
@可拉伸/飞溅屏幕
在Resources/values/styles.xml内部,您可以如下设置启动主题:
@可抽出式/飞溅式屏幕
最后一件事是在我们的活动中设置初始屏幕
[活动(Label=“darkmodesplashsscreen”,Icon=“@mipmap/Icon”,Theme=“@style/LaunchTheme”,LaunchMode=LaunchMode.SingleTop,MainLauncher=true,ConfigurationChanges=ConfigChanges.ScreenSize | ConfigChanges.Orientation)]
有关详细步骤以及如何在iOS上实现它,您可以按照本教程进行操作:您希望在一个屏幕上有两个不同的图像,还是像两张图片中所示的那样有两个不同的屏幕?
<?xml version="1.0" encoding="UTF-8" ?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<color android:color="@android:color/white" />
</item>
<item>
<bitmap
android:src="@drawable/xamarin_small"
android:gravity="center"/>
</item>
<item android:bottom="40dp">
<bitmap
android:src="@drawable/microsoft"
android:gravity="center_horizontal|bottom"/>
</item>
</layer-list>