XAML 自定义Maui上的TopBar

b1payxdu  于 2022-12-07  发布在  其他
关注(0)|答案(1)|浏览(234)

这个任务是荒谬的,但我在互联网上找不到任何信息。所以请怜悯怜悯我。
我想自定义MAUI应用程序的顶栏(The part in blue)。我该怎么做?
感谢您的支持

4xy9mtcn

4xy9mtcn1#

你可以创建自定义渲染器,比如Xamarin.Forms for Shell(不需要添加[assembly: ExportRenderer(typeof(Shell), typeof(MyShellRenderer))])。如果你想创建自定义标签栏,通常,对于android,你需要覆盖CreateBottomNavViewAppearanceTracker。对于iOS,你需要覆盖CreateTabBarAppearanceTracker方法。
然后,在. MauiProgram.cs中注册shell的自定义呈现器

builder.UseMauiApp<App>()
      .ConfigureFonts(fonts =>
      {
           ....
      }).ConfigureMauiHandlers(handlers => { 
           
                        #if ANDROID
                            handlers.AddHandler(typeof(Shell), typeof(CustomShellRenderer));
                        #elif iOS
                             handlers.AddHandler(typeof(Shell), typeof(MyiOSCustomShellRenderer));
               
                        #endif
            });

您可以参考本文Xamarin Forms Shell TabBar Rounded Corner,使用shellrender定制顶栏。

相关问题