在我的Xamarin Forms
应用程序中,我将Tabbed Page
作为Detail page
的第一个Master Details Page
。因此,在运行我的Droid
应用程序时,它显示empty
空白屏幕几秒钟,然后显示正确的Tabbed Page
。但是,如果我在iOS
中运行同一项目,则不会显示任何Empty
或blank
屏幕;选项卡式页面呈现速度很快。
我尝试过的事情
如果我将其他任何普通Content Page
设置为第一个Detail page
而不是Tabbed Page
,则表示该页面正在Droid
中快速呈现
我也尝试过将Xamarin.Forms
从 v2.5.1.444934 更新为 v3.1.0.697729 ,但是没有运气。
因此,我确认由于Empty or Blank
,Droid App
屏幕在Tabbed Page
中显示了几秒钟。有没有解决该问题的方法。预先感谢。
Login.cs
MasterDetailPage masterDetail = new MasterDetail();
masterDetail.IsPresented = false;
Application.Current.MainPage = masterDetail;
成功登录API后在Login.cs
中使用以上代码
MasterDetail.xaml
<?xml version="1.0" encoding="UTF-8"?>
<MasterDetailPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
x:Class="Test.MasterDetail" IsPresented="false">
<MasterDetailPage.Master>
<local:MasterPage x:Name="masterPage"/>
</MasterDetailPage.Master>
</MasterDetailPage>
MasterDetail.xaml.cs
public partial class MasterDetail : MasterDetailPage
{
public MasterDetail()
{
InitializeComponent();
Detail = new NavigationPage(new BottomTabbedPage());
}
}
BottomTabbedPage.xaml.cs
public class BottomTabbedPage : TabbedPage
{
public BottomTabbedPage()
{
//setting false to hide navigation bar
NavigationPage.SetHasNavigationBar(this, false);
Children.Clear();
var map = new NavigationPage(new ConsumerMap());
map.Icon = "map_icon";
map.Title = ""Home;
Children.Add(map);
var order = new NavigationPage(new Order());
order.Icon = "order_icon";
order.Title = ""Order;
Children.Add(order);
var history = new NavigationPage(new History());
history.Icon = "history_icon";
history.Title = "History";
Children.Add(history);
}
}
BottomTabbedPage.xaml.cs
<TabbedPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
x:Class="Test.BottomTabbedPage">
</TabbedPage>