c# - 如何在适用于 iOS 的 Xamarin Forms 中创建导航栏?

标签 c# xaml xamarin xamarin.ios xamarin.forms

Xamarin Forms 中的 XAML 是否支持为 iOS 创建导航栏?我搜索了所有 Xamarin 支持、论坛和互联网..

在这一点上我不相信有支持,但我真的不想重新发明轮子,如果它已经被发明了..


编辑:

导航栏是指这个东西:

enter image description here

最佳答案

当您使用 NavigationPage 创建页面时,Xamarin.Forms 会自动在 iOS 上创建一个导航栏。你还可以修改导航栏的很多东西,像这样:

NavigationPage.SetBackButtonTitle(this, ""); // Empty text
NavigationPage.SetHasBackButton(this, false); // No back button
NavigationPage.SetTitleIcon (this, someIcon); // Set the icon

请查看以下文章,以很好地解释 ContentPage 和 NavigationPage 之间的差异:Xamarin.Forms Pages: ContentPage and NavigationPage

Xamarin 的官方文档也很好地涵盖了导航:Hierarchial Navigation


您是否将根页面设置为 NavigationPage 类型?在您的 App 类中,您应该有类似

的东西
MainPage = new ContentPage(); // etc.

改成这样

MainPage = new NavigationPage(new FirstPageOfTheApp());
//FirstPageOfTheApp should be of type ContentPage.

总而言之,根页面需要是NavigationPage,所有其他页面都是ContentPage

关于c# - 如何在适用于 iOS 的 Xamarin Forms 中创建导航栏?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38644155/

相关文章:

c# - 使用 form.ShowDialog() 时,mainform 中的线程不起作用

c# - 如何从 CheckedListBox 中获取选中项的字符串值?

parsing - XAML解析异常

c# - Xamarin - 在社区版中编译 AOT?

xamarin - XAML/cs - 更新包后,成员名称不能与其封闭类型 (CS0542) 相同

c# - JavaScriptSerializer 可以排除具有空值/默认值的属性吗?

c# - 我怎么知道哪个聊天在电报机器人上生成 "chat not found"异常?

wpf - 在 WPF ComboBox 上,是否可以为文本框和弹出窗口设置不同的前景色?

c# - 只读值的优雅解决方案

c# - 是否有用于 Silverlight 的现代版本 "Deep Zoom Composer"允许将全景图像拼接在一起?