有没有办法从Android中删除Xamarin Forms - Portable(Xaml)中的Action Bar?
我想删除少于标志("<")以及出现在Xamarin Forms xaml内容页面上方的应用程序图标。
答案 0 :(得分:40)
您可以使用以下代码使用Xamarin.Forms从Xaml中删除导航栏。
NavigationPage.SetHasNavigationBar (this, false);
this
代表当前页面/表单实例。
希望这有帮助!
答案 1 :(得分:2)
NavigationPage.SetHasNavigationBar(this, false);
上面提到的并不是一个好的解决方案。
通过使用此代码,它会禁用页面中的NavigationBar
。
我们只有为NavigationRenderer
为NavigationPage
创建Android
才能实现真正的解决方案。
void RemoveAppIconFromActionBar()
{
var actionBar = ((Activity)Context).ActionBar;
actionBar.SetIcon (new ColorDrawable (Color.Transparent.ToAndroid ()));
}
请参阅Github以获取完整的代码段:https://gist.github.com/Vaikesh/f86d1968c8166519f102#file-customnavigationrenderer-cs
答案 2 :(得分:0)
在操作栏中可以使用后退按钮。你可以使用
删除它NavigationPage.SetHasBackButton(this, false)
答案 3 :(得分:0)
最简单的方法是在ContentPage中添加 NavigationPage.HasNavigationBar =“ false”
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
x:Class="SterlingSwitch.Pages.Page1"
NavigationPage.HasNavigationBar="False">
<ContentPage.Content>
<StackLayout>
<Label Text="Welcome to Xamarin.Forms!"
VerticalOptions="CenterAndExpand"
HorizontalOptions="CenterAndExpand" />
</StackLayout>
</ContentPage.Content>
</ContentPage>
答案 4 :(得分:0)
从xml页面实现此目标的最佳方法
<?xml version="1.0" encoding="utf-8" ?>
<ContentPage
x:Class="ICLDC.Digital.General.Pages.AboutApp.AboutApplication"
xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:ios="clr-namespace:Xamarin.Forms.PlatformConfiguration.iOSSpecific;assembly=Xamarin.Forms.Core"
xmlns:local="clr-namespace:ICLDC.Digital.General.Pages.Generic"
xmlns:translate="clr-namespace:ICLDC.Digital.General.Helpers"
ios:Page.UseSafeArea="True"
NavigationPage.HasNavigationBar="False">
<ContentPage.Content>
<StackLayout
BackgroundColor="White"
HorizontalOptions="FillAndExpand"
Spacing="0"
VerticalOptions="FillAndExpand"/>
</ContentPage.Content>
</ContentPage>