Xamarin导航栏具有不需要的默认图标,无法更改或删除

时间:2019-03-15 17:36:47

标签: xamarin.forms navigationbar

最近我将Xamarin项目升级到了所有最新的DLL。现在,在导航栏上,Android上出现了一个图标(尚未查看iOS)。看到通用图标:

enter image description here

花了数小时搜索和制作原型代码后,我仍然不知道如何更改或摆脱该图标!对我的项目中的png文件进行递归搜索没有找到这样的图像。

有一个方法SetTitleIcon,但是该方法没有执行任何操作。有人谈论布局文件夹中的工具栏xaml文件,但是我没有这样的文件。

我遵循了本教程:https://xamarinhelp.com/xamarin-forms-toolbar/,但是只能添加图标,它不会删除默认图标。

我找到了这个演示项目:https://developer.xamarin.com/samples/monodroid/Supportv7/AppCompat/Toolbar,但是该代码与我的代码完全不同。我需要走那条路线吗?

无论如何,我的主要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"
             xmlns:local="clr-namespace:SharedMobile"
             NavigationPage.HasNavigationBar="true"
             x:Class="SharedMobile.MainPage">

  <MasterDetailPage.Master>
    <local:MainPageMaster x:Name="MasterPage" />
  </MasterDetailPage.Master>
  <MasterDetailPage.Detail>
        <NavigationPage BarBackgroundColor="#DCDCDC"> 
      <x:Arguments>
         <local:ActionProcessesPage />
      </x:Arguments>
    </NavigationPage>
  </MasterDetailPage.Detail>
</MasterDetailPage>

导航栏项目中的其他地方几乎没有提及。我确实尝试在导航页面下添加NavigationPage.Icon。什么都没发生。

我只兼职做Xamarin是我的借口。

2 个答案:

答案 0 :(得分:2)

我在Stack Overflow上发布的主要原因之一经常是(出于某种原因)发布后不久,我会找出答案或找到答案。

<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             xmlns:local="clr-namespace:SharedMobile;assembly=MyApp.Mobile"
             NavigationPage.TitleIcon="transparent.png"
             x:Class="SharedMobile.ActionProcessesPage">

答案 1 :(得分:1)

MainActivity.cs中(在Android项目中),

protected override void OnCreate(Bundle bundle)
{
    ...
    ActionBar.SetIcon(null);
    LoadApplication(new Forms.App());
}

Source