Как убрать лишнюю NavigationBar в заставке Xamarin - PullRequest
0 голосов
/ 08 февраля 2019

Я создаю приложение Xamarin CrossPlatform!

Я добавил заставку, которая работает нормально, но проблема в том, что она дает мне дополнительную панель навигации сверху, которую я не хочучтобы быть в моем приложении MainPage

Снимок экрана:

enter image description here

Вот мой код заставки:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

using Xamarin.Forms;
using Xamarin.Forms.Xaml;

namespace Last_MSPL.Views
{
    [XamlCompilation(XamlCompilationOptions.Compile)]
    public partial class SplashPage : ContentPage
    {
        Image splashImage;


        public SplashPage()
        {
            NavigationPage.SetHasNavigationBar(this, false);

            var sub = new AbsoluteLayout();
            splashImage = new Image
            {
                Source = "truck.png",
                WidthRequest = 300,
                HeightRequest = 300
            };
            AbsoluteLayout.SetLayoutFlags(splashImage,
               AbsoluteLayoutFlags.PositionProportional);
            AbsoluteLayout.SetLayoutBounds(splashImage,
             new Rectangle(0.5, 0.5, AbsoluteLayout.AutoSize, AbsoluteLayout.AutoSize));

            sub.Children.Add(splashImage);

            this.BackgroundColor = Color.FromHex("#FFF");
            this.Content = sub;
        }


        protected override async void OnAppearing()
        {
            base.OnAppearing();

            await splashImage.ScaleTo(1, 500); //Time-consuming processes such as initialization
            await splashImage.ScaleTo(0.9,1800, Easing.CubicInOut);
            //await splashImage.ScaleTo(0, 1600, Easing.Linear);
            Application.Current.MainPage = new NavigationPage(new MainPage());    //After loading  MainPage it gets Navigated to our new Page
        }

    }
}

1 Ответ

0 голосов
/ 08 февраля 2019

Если главная страница является основной деталью, просто замените Application.Current.MainPage = new MainPage(); без необходимости Application.Current.MainPage = new NavigationPage(new MainPage());

Может быть из-за этого она дает вам дополнительную панель навигации вверху.

...