【问题标题】:Spark TabBar unique tabsSpark TabBar 独特的选项卡
【发布时间】:2012-12-13 05:41:38
【问题描述】:

我目前有以下设置(为简单起见进行了抽象):

<s:TabBar id="extentTypeTabBar" dataProvider="{vs}"/>
<mx:ViewStack id="vs">
    <s:NavigatorContent id="firstTab" label="Action">
        <!--content-->
    </s:NavigatorContent>
    <s:NavigatorContent id="secondTab" label="Adventure">
        <!--content-->
    </s:NavigatorContent>
    <s:NavigatorContent id="thirdTab" label="Favorites">
        <!--content-->
    </s:NavigatorContent>
</mx:ViewStack>

我希望thirdTab 有一个图像而不是一个标签(即一个星星或心脏的图像,而不是“收藏夹”这个词)。我尝试使用 NavigatorContent 上的“图标”属性,但无济于事。

我相信要实现这一点,我将不得不为 Spark TabBar 创建一个带有逻辑的自定义皮肤,因为我只想为一个选项卡而不是所有选项卡单独设置皮肤。有没有人举例说明如何做到这一点?

谢谢!
日本人

【问题讨论】:

  • 这对您有帮助吗? Link

标签: actionscript-3 apache-flex adobe mxml


【解决方案1】:

如果您使用NavigatorContent 对象的icon 属性,这应该可以正常工作。 icon 属性的类型为 Class,因此您必须为其提供表示嵌入图像或 FXG 对象的类。

以下是两种方法的示例:

<s:NavigatorContent icon="@Embed('favorite_icon.png')" /> <!-- embedded icon -->
<s:NavigatorContent icon="{FxgAsset}" /> <!-- fxg asset -->

为方便起见,我把图标放在了我项目的“默认包”中,只需更改图标的路径以匹配您图标的位置即可。我在第二个示例中使用的 FXG 资产可以位于项目中的任何位置。 FXG 资产本质上是类,因此您无需指定路径(您的 IDE 应该像任何其他类一样找到它)。

请注意,还有其他几种嵌入图像的方法,它们都应该可以工作......我在这里展示的示例是最简单的:)

【讨论】:

    猜你喜欢
    • 2012-02-26
    • 2011-12-09
    • 2020-01-25
    • 2012-08-16
    • 2021-12-10
    • 1970-01-01
    • 2020-02-25
    • 2014-03-07
    • 1970-01-01
    相关资源
    最近更新 更多