Призма заставки xamarin.forms - PullRequest
0 голосов
/ 04 июля 2018

Я хотел бы создать заставку в своем приложении xamarin.forms, которое использует пакет nuget prism.autofac.forms . По сути, я хочу создать одинаковый экран-заставку для каждой платформы. В настоящее время мое приложение для Android выглядит так

    [Activity(Label = "MyApp", Theme = "@style/MyTheme", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)]
    public class MainActivity : FormsAppCompatActivity
    {
        protected override void OnCreate(Bundle bundle)
        {
            ToolbarResource = Resource.Layout.Toolbar;
            TabLayoutResource = Resource.Layout.Tabbar;

            base.OnCreate(bundle);

            Forms.Init(this, bundle);
            LoadApplication(new Application(new DroidInitializer()));
        }
    }

и приложение выглядит так:

[XamlCompilation(XamlCompilationOptions.Compile)]
public partial class Application : PrismApplication
{
    public Application(IPlatformInitializer initializer) : base(initializer)
    {
        NavigationService.NavigateHomeAsync();
    }

    protected override void RegisterTypes(IContainerRegistry containerRegistry)
    {
        containerRegistry.RegisterForNavigation<NavigationPage>("Navigation");
        containerRegistry.RegisterForNavigation<MainPage>("Index");
        containerRegistry.RegisterForNavigation<HomePage>();
    }

    protected override void OnInitialized()
    {
        InitializeComponent();
    }
}

Где мне реализовать и показать заставку? Я хочу NavigateHome, когда все регистрации завершены.

1 Ответ

0 голосов
/ 04 июля 2018

Заставки должны быть реализованы в проектах платформы.

Для iOS рекомендуется использовать раскадровку для него, https://docs.microsoft.com/en-us/xamarin/ios/app-fundamentals/images-icons/launch-screens?tabs=vsmac Для Android я использую для создания темы для заставки, https://docs.microsoft.com/en-us/xamarin/android/user-interface/splash-screen

Вы можете заставить их выглядеть одинаково, но вы должны делать это на каждой платформе.

...