Xamarin Forms 中的徽章计数器不起作用

Badge counter in Xamarin Forms not working

我正在使用此 Plugin 在 Xamarin Forms 应用的选项卡式视图中显示徽章计数。

Xaml代码

<?xml version="1.0" encoding="utf-8"?>
<TabbedPage xmlns="http://xamarin.com/schemas/2014/forms"
            xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
            xmlns:d="http://xamarin.com/schemas/2014/forms/design"
            xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="d"
            xmlns:plugin="clr-namespace:Plugin.Badge.Abstractions;assembly=Plugin.Badge.Abstractions"
            xmlns:android="clr-namespace:Xamarin.Forms.PlatformConfiguration.AndroidSpecific;assembly=Xamarin.Forms.Core" android:TabbedPage.ToolbarPlacement="Bottom"
            SelectedTabColor="{StaticResource HighlightText}"  BarBackgroundColor="{StaticResource HighlightBg}" UnselectedTabColor="Gray" 
            xmlns:views="clr-namespace:Sello.Views" x:Class="Sello.Views.MainPage" >
   <TabbedPage.Children>
        <NavigationPage Title="Home" IconImageSource="home.png">
                  <x:Arguments>
                <views:HomePage />
            </x:Arguments>
        </NavigationPage>

         <NavigationPage Title="Search" IconImageSource="search.png">
            
            <x:Arguments>
                <views:AboutPage />
            </x:Arguments>
        </NavigationPage>

         <NavigationPage Title="Cart" IconImageSource="cart.png"
             plugin:TabBadge.BadgeText= "2" 
             plugin:TabBadge.BadgeColor="Red"
              plugin:TabBadge.BadgeTextColor="White"   plugin:TabBadge.BadgePosition="PositionCenter"       >
            
            <x:Arguments>
                <views:AboutPage />
            </x:Arguments>
        </NavigationPage>


        <NavigationPage Title="Account" IconImageSource="account.png">
            
            <x:Arguments>
                <views:AccountPage />
            </x:Arguments>
        </NavigationPage>
    </TabbedPage.Children>
</TabbedPage>

也如 plugin doucmentation 中所述 在 AssemblyInfo.cs

中添加了以下行
[assembly: ExportRenderer(typeof(TabbedPage), typeof(BadgedTabbedPageRenderer))]

添加此行时,显示以下错误消息

The type or namespace name 'ExportRenderer' could not be found (are you missing a using directive or an assembly reference?)

所以当我评论上面的行时,应用程序运行没有错误,但徽章没有显示。为了进行测试,我尝试在另一个测试应用程序上实现相同的功能,但也没有用。 请帮我解决这个问题。

The type or namespace name 'ExportRenderer' could not be found (are you missing a using directive or an assembly reference?)

正如错误告诉您的那样,您缺少 using 指令。添加此内容(将 Android 项目的 iOS 更改为 Android)

using Plugin.Badge.iOS;

您还需要确保您是在平台项目(iOS、Android 等)而不是共享表单项目中执行此操作

查看 sample project 示例