【问题标题】:xamarin android : Executing code before first intentxamarin android:在第一个意图之前执行代码
【发布时间】:2013-05-04 14:47:49
【问题描述】:

在 Xamarin.Android 应用中,我需要显示来自 http 远程服务器的初始屏幕图像。

所以,我需要在 MainLauncher Activity 显示之前执行一些代码(WebClient...)(我的 MainLauncher Activity 基本上是一个 ImageView 和一个 ProgressBar)。

如果我在 MainLauncher 活动的 OnCreate 中添加我的 WebClient 代码,则在下载期间会显示黑屏。 所以我想在显示主启动器之前执行我的 WebClient 代码。

或者任何一种技巧都可以!

希望清楚...

【问题讨论】:

    标签: android xamarin


    【解决方案1】:

    您可以创建一个扩展 Android.App.Application 的类并将您的代码添加到它的 OnCreate 方法中。它将在应用程序启动时的 MainLauncher 活动之前调用。正如here 指出的那样,此代码仅在应用首次加载时调用。

    例如,将 Application.cs(可以使用 Xamarin Studio 的 Android Activity 新文件模板)添加到项目的顶层,内容如下:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;    
    using Android.App;
    using Android.Content;
    using Android.OS;
    using Android.Runtime;
    using Android.Views;
    using Android.Widget;
    using MyApp.Core;
    
    namespace MyApp.Droid
    {
        public class Application : Android.App.Application
        {
            public Application(IntPtr javaReference, JniHandleOwnership transfer)
            : base(javaReference, transfer)
            {
            }
    
            public override void OnCreate()
            {
                base.OnCreate();
    
                // PUT SETUP CODE HERE
            }
        }
    }
    

    【讨论】:

      【解决方案2】:

      您可能还需要一项活动。立即启动启动画面,并在那里进行加载;加载完成后,重定向到您的主要活动。

      【讨论】:

        猜你喜欢
        • 2018-12-03
        • 2016-12-25
        • 2018-06-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多