【问题标题】:Xamarin Forms ToolbarItem text (only) is not displaying on Android (only)Xamarin Forms ToolbarItem 文本(仅)不在 Android 上显示(仅)
【发布时间】:2022-01-08 12:49:23
【问题描述】:

我有一个适用于 Android 和 UWP 的 Xamarin Forms 应用程序。 (尚未尝试 iOS。)我有以下 ToobarItem:

<ContentPage Title="Debug" ...  >

    <ContentPage.ToolbarItems>
        <ToolbarItem IconImageSource="Question_16x.png" Text="Help" Clicked="OnHelpPressed" Order="Primary" Priority="0"/>
    </ContentPage.ToolbarItems>
...

在 UWP 上,它可以正常工作:

但在 Android 上,无论是 Android 模拟器还是三星手机,我都得到一个非常模糊的问号图标,并且没有文字“帮助”:

如果我删除文本显示的图标。

在两个平台上,单击或点击项目会按预期驱动 Clicked 方法。两个项目中的图标完全相同。

有什么建议吗?

【问题讨论】:

    标签: android xamarin.forms toolbar


    【解决方案1】:

    要让图标不那么“浑浊”,请使用更大的图标位图。

    这是一个问号,设计用于高 dpi 设备上的高分辨率(它比需要的分辨率更高;如果需要,可以缩小):

    源自wikimedia - Icon-round-Question_mark.jpg

    --- 要查看更多图标,请转至Wikimedia Category:icons。浏览起来不是最方便的;用谷歌搜索你想要的东西更容易:wikimedia icon question mark ---

    将此文件放在YourProjectName.Android\Resources\drawable 文件夹中。
    在项目的解决方案资源管理器窗格中,右键单击该文件夹,“添加现有项目”,然后浏览到该文件。这会将Build Action 设置为"AndroidResource"

    如果您在paint app 中检查该文件,您会看到问号图片周围有一些透明区域“填充”。

    这是每个Material Design icons in app bar / Specs - Mobile。要进行调整,请在绘画应用中使用“图像/画布大小”来更改填充量。

    xamarin-forms-samples/UserInterface/ToolbarItemDemos 中测试。

    【讨论】:

    • 太棒了。我打算在这里发布一个屏幕截图,但我猜 cmets 不能有图像。有趣——Android 将黑色反转为白色,使其显示在深蓝色背景上。
    • 谢谢。我试图将此标记为答案,但我猜你只能有一个答案,@Adrain Zhu -MSFT 回答了我最初的问题。我将其标记为有用,因为确实如此。哎呀,我不知道维基媒体图标集合——很棒的资源。
    • @Charles - 很高兴我能帮上忙 :)
    【解决方案2】:

    在 android/ios 上,您可以使用下面的代码来显示文本和图标:

       <ContentPage.ToolbarItems>
            <ToolbarItem IconImageSource="Question_16x.png" Order="Primary" Priority="0"/>
         <ToolbarItem Text="Help"Clicked="OnHelpPressed" Order="Primary" Priority="0"/>
        </ContentPage.ToolbarItems>
    

    【讨论】:

    • 好吧宾果游戏!我怎么没想到呢?
    • 如果我能让图标不那么“泥泞”就好了,但这是 100% 的改进!
    • 仅供参考,可以按照两个 ToolbarItem 的顺序进行操作,并获得“帮助?”或“?帮助”,随心所欲。
    猜你喜欢
    • 2020-02-25
    • 2018-01-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-22
    相关资源
    最近更新 更多