我想从操作栏中删除我的图标,我正在使用MasterDetail页面创建一个滑块,我使用左侧图标打开滑块,但右侧较小的图标是"APP Vendas"的一部分,我想删除,我尝试了C#上的所有内容,很容易删除而没有成功.Tryiend 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项目中的文件中添加这些单行代码即可.
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()); } }
我们可以通过改变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 {}
成功构建并运行您的应用程序.
参考:
http://www.c-sharpcorner.com/UploadFile/e4bad6/remove-android-action-bar-icon-in-xamarin-forms812/