c# - MonoTouch 飞溅推子

标签 c# xamarin.ios splash-screen

我正在尝试为 MonoTouch 创建一个启动屏幕,它会在短时间内从 Default.png 淡入应用程序。

这是我迄今为止在 AppDelegate 中所拥有的,

public override bool FinishedLaunching (UIApplication app, NSDictionary options)
{
    window = new UIWindow (UIScreen.MainScreen.Bounds);
    viewController = new App1ViewController ();
    navController = new UINavigationController(viewController);

    UIImageView splash = new UIImageView(window.Bounds);
    splash.Image = UIImage.FromFile("Default.png");
    splash.Alpha = 1.0f;

    window.AddSubview(splash);
    UIView.Animate(5,
    delegate
    {
        splash.Alpha = 0.0f;
    },
    delegate
    {
        Console.WriteLine("Removed.");
        splash.RemoveFromSuperview();
        window.RootViewController = navController;
    });
    window.MakeKeyAndVisible();

    return true;
}

但到目前为止它还没有工作/显示任何东西。另外,是否有一个事件可以完成动画,以便我可以删除 View ?这是解决这个问题的正确方法吗?

PS 我已经将图像文件放在应用程序的根文件夹中并标记为内容。它们只是在应用程序负载下持续的时间不够长。

最佳答案

更改了一些变量名称,但我希望这有帮助......

public override bool FinishedLaunching (UIApplication app, NSDictionary options)
    {
        window = new UIWindow (UIScreen.MainScreen.Bounds);

        UIImageView splash = new UIImageView(window.Bounds);
        splash.Image = UIImage.FromFile("Default.png");

        var vc = new UIViewController ();
        var nav = new UINavigationController(vc);

        window.AddSubview(splash);
        window.AddSubview(nav.View);
        window.BringSubviewToFront(splash);
        window.MakeKeyAndVisible();

        UIView.Animate(5,
        delegate
        {
            splash.Alpha = 0f;
        },
        delegate
        {
            Console.WriteLine("Removed.");
        window.RootViewController = nav;
            splash.RemoveFromSuperview();

        });

        return true;
    }

关于c# - MonoTouch 飞溅推子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9793689/

相关文章:

c# - Newtonsoft.Json DeserializeXmlNode 将标签名称从数字更改为 "something"

c# - 无法解析 C# 中的嵌套 Json 文件

macos - Xamarin Mac 解决方法

ios - 使用 Xamarin,为什么我的应用程序设置默认为 false?

ios - 为什么我不能在 apache cordova/phonegap 应用程序中摆脱(或至少改变)iOS 上的默认启动画面?

c# - 具有返回类型的 try-catch block

c# - 在 Git 中 stash API key 的正确方法

ios - 什么是 IOS 中多行文本的最佳文本容器

android - 未出现在 xml 中定义的 SplashScreen 方法(无 Activity )

ios - 在 SWIFT 中启动图像闪屏动画