Удалить значок из панели действий xamarin

Я хочу удалить значок из панели действий, я использую страницу MasterDetail для создания слайдера, я использую левый значок, чтобы открыть слайдер, но правый значок меньшего размера, расположенный на «APP Vendas», который я хочу удалить, Я попытался все на C #, чтобы легко удалить без успеха. Triend tranpatent, RGBA, None и т. Д., Вот мой код и изображение:

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using Xamarin.Forms; using App5.Menu; using App5.Categorias; using App5; namespace App5 { public class MainPage : MasterDetailPage { public MainPage() { var menuPage = new MenuPage(); menuPage.OnMenuTap = (page) => { IsPresented = false; Detail = new NavigationPage(page); }; Master = menuPage; Detail = new NavigationPage(new Resumo()) { BarBackgroundColor = Color.Black, Icon = None }; } } } 

Правильный значок - это то, что я хочу удалить.

Мы можем сделать значок приложения прозрачным, изменив проект MainActivity.cs в Android примерно так:

 [Activity (Label = "Sample Application", Icon = "@android:color/transparent", MainLauncher = true] 

В этом состоянии никто не замечает, что, изменяя это, они делают прозрачность приложения. В результате приложение не будет отображать значок, когда он установлен на устройстве.

Таким образом, лучший способ – сделать класс NavigationPage который управляет навигацией и пользовательским интерфейсом стека других страниц.

Создайте класс с именем CustomNavigationRenderer внутри проекта Android, который будет реализацией на платформе, содержащей код, чтобы скрыть значок из панели действий.

 using Android.App; using Android.Graphics.Drawables; using Xamarin.Forms; using Xamarin.Forms.Platform.Android; using SampleApp; using SampleApp.Droid; [assembly: ExportRenderer(typeof(NavigationPage), typeof(CustomNavigationRenderer))] namespace SampleApp.Droid { public class CustomNavigationRenderer: NavigationRenderer { protected override void OnElementChanged(ElementChangedEventArgs < NavigationPage > e) { base.OnElementChanged(e); RemoveAppIconFromActionBar(); } void RemoveAppIconFromActionBar() { var actionBar = ((Activity) Context).ActionBar; actionBar.SetIcon(new ColorDrawable(Color.Transparent.ToAndroid())); } } } 

Теперь создайте подкласс элемента управления NavigationPage, который должен быть настроен.

 public class CustomNavigationRenderer : NavigationPage {} 

Создавайте и запускайте свое приложение успешно.

См.

Вам нужно просто добавить эти одиночные строки в файле MainActivity.cs в свой проект Android.

 ActionBar.SetIcon(Android.Resource.Color.Transparent); 

Например

 using Android.OS; using Android.Content.PM; namespace Test.Droid { [Activity(Label = "test", Icon = "@drawable/icon", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)] public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsApplicationActivity { protected override void OnCreate(Bundle bundle) { base.OnCreate(bundle); global::Xamarin.Forms.Forms.Init(this, bundle); ActionBar.SetIcon(Android.Resource.Color.Transparent); LoadApplication(new App()); } }