Как скрыть кнопку возврата на панели навигации с помощью Xamarin.Forms - AppShell?
В настоящее время я использую AppShell в своем приложении xamarin. Мне нужно скрыть стрелку кнопки возврата в NavBar и заменить ее значком меню.NavigationPage.HasBackButton="False"
У меня не работает.
1 ответ
Решение
Вы можете использовать пользовательский рендерер для сброса NavigationIcon
. Я использую значок звездочки для справки.
[assembly: ExportRenderer(typeof(AppShell), typeof(ShellCustomRenderer))]
namespace ShellDemo.Droid
{
public class ShellCustomRenderer : ShellRenderer
{
public ShellCustomRenderer(Context context) : base(context)
{
}
protected override IShellToolbarAppearanceTracker CreateToolbarAppearanceTracker()
{
return new ToolbarAppearance();
}
}
public class ToolbarAppearance : IShellToolbarAppearanceTracker
{
public void Dispose()
{
}
public void ResetAppearance(Android.Support.V7.Widget.Toolbar toolbar, IShellToolbarTracker toolbarTracker)
{
//toolbar.SetBackgroundColor(Android.Graphics.Color.Red);
toolbar.SetNavigationIcon(Resource.Drawable.star_small);// Resource.Drawable.star_small;
}
public void SetAppearance(Android.Support.V7.Widget.Toolbar toolbar, IShellToolbarTracker toolbarTracker, ShellAppearance appearance)
{
//toolbar.SetBackgroundColor(Android.Graphics.Color.Red);
toolbar.SetNavigationIcon(Resource.Drawable.star_small);
}
}
}
ht tps:https://stackru.com/images/2afd3f3748a2b6b12568b0fc75033614ff3b5d23.gif