如何设置MAUI应用的默认首页?
如何设置MAUI应用的默认首页?
嘿,我太懂这种到处搜都找不到答案的憋屈了!其实你遇到的这个问题在MAUI Shell里挺常见的——光给页面加Route是没法改变默认启动页的,因为Shell默认会把TabBar里第一个ShellContent当成打开应用时的首页。
给你两种简单的解决方法:
方法一:调整ShellContent的顺序(最直接)
直接把你想设为首页的ShellContent放到TabBar的第一个位置就行,比如把你的代码改成这样:
<TabBar> <ShellContent ContentTemplate="{DataTemplate local:NewPage2}" Route="MainPage" Title="Page 2" /> <ShellContent ContentTemplate="{DataTemplate local:NewPage1}" Title="Page 1" /> <ShellContent ContentTemplate="{DataTemplate local:NewPage3}" Title="Page 3" /> </TabBar>
这样应用启动后就会直接打开Page 2,同时TabBar的选中状态也会自动对应到这个页面。
方法二:用代码指定启动页(不用调整顺序)
如果你不想改变TabBar里的页面顺序,可以在AppShell的构造函数里添加导航代码,强制启动时跳转到目标页面:
public AppShell() { InitializeComponent(); // 导航到你设置了Route的页面 Current.GoToAsync("//MainPage"); }
这里的//MainPage就是你给NewPage2设置的Route值,这样启动时应用会自动跳转到这个页面,TabBar也会同步选中对应的标签。
备注:内容来源于stack exchange,提问作者spaced_uk
相关产品推荐
相关产品推荐

