Xamarin实现将图片设置为启动页——Xamarin.forms

本文介绍如何使用Xamarin为应用程序设置启动页,包括放置启动页图片到正确位置、配置启动主题及创建启动活动等关键步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

其实设置启动页很简单,只是我在做的时候,踩了一些坑,就走了一些弯路。

我知道大家一点开这些博客就想看到源码,在我搭建环境给的demo里面就有一个splash的demo,多个app的demo免费相送,传送门:https://blog.youkuaiyun.com/qq_41647999/article/details/84844357

我这里就不慢慢的创建新项目,在一步一步的教大家做了。直接讲最核心的部分还有我踩的坑。

1、 放入启动页图片
打开项目之后,如果你是安卓手机,直接把符合大小的图片放在drawable的文件里面,如下图将bg.png设为启动页:

我刚学xamarin的时候,以为需要设置一下图片的路径,才能被正常访问。于是看了别人一篇文章,写了一个xml的文件和启动页图片一起丢在drawable里面,结果是启动页倒是显示了,但是主页面进不去了。我自己挖了一个坑,就是图片名是数字就丢在文件夹里面了,这样是错的。因为,每一个静态资源放在drawable里面,系统都会按照这个静态资源的名称作为变量,然后分配一个id,而大家都知道数字是不能够作为变量的。

总结:Xamarin的默认路径就是drawable,图片的名称一定不能为数字。

2、 设置启动页图片
下述操作均在Android的项目里面进行。

(1) 将bg.png设为启动页,在styles.xml里写入这么一个样式。

<style name="SplashTheme" parent="Theme.AppCompat.Light.NoActionBar">
    <item name="android:windowBackground">@drawable/bg</item>
    <item name="android:windowNoTitle">true</item>
    <item name="android:windowFullscreen">true</item>
    <item name="android:windowActionBar">true</item>
    <item name="android:windowContentOverlay">@null</item>
  </style>
(2) 先把 MainActivity.cs 的 MainLauncher = true 删除,这样app一启动就不会白屏等待加载MainActivity.cs。

(3) 创建一个SplashActivity.cs的文件

 (4) 大致内容如下图,把 MainLauncher = true 放到这个文件里面,然后写入theme引用xml里面写入的style。

 代码还是给出来吧:

using Android.App;
using Android.OS;
namespace IntelligentWorld.Droid
{
    [Activity(MainLauncher = true, NoHistory = true, Theme = "@style/SplashTheme")]
    class SplashActivity : Activity
    {
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);
 
            // Create your application here
            StartActivity(typeof(MainActivity));
        }
    }
}
启动页就完成了,如果你没有实现,欢迎您评论留言告诉我~

感谢您的阅读!
--------------------- 
作者:Mr.DJun 
来源:优快云 
原文:https://blog.youkuaiyun.com/qq_41647999/article/details/84994900 
版权声明:本文为博主原创文章,转载请附上博文链接!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值