0

我们在当前项目中使用 Flex 4.6,我决定将一些按钮放在屏幕的右侧边缘,这些按钮基本上看起来就像简单的选项卡,因此具有对称的梯形形状。问题?我理解为什么 Flex 不会内置梯形,但显然三角形也不是,在 Flex 中实现三角形显然是不自然的。

要实现这些按钮,我看到的两个主要选项是:

1:从Image继承并嵌入一些具有透明背景或其他东西的png。

2:继承自Group,让按钮的矩形部分为Rect,三角形部分为1-width Lines的集合。

哪个效率更高?一般来说哪个会更好?我知道这些方法是不自然的,但是尽管我在 Flex 中看到了这些问题,但是否有一种更好的 Flex 风格的方法来处理这个问题?谢谢!

4

2 回答 2

3

您可以使用Path轻松绘制这些基本形状

三角形

<s:Path data="M 0 0 L 5 10 L 10 0 Z">
    <s:stroke>
        <s:SolidColorStroke color="0x000000"/>
    </s:stroke>
</s:Path>

梯形

<s:Path data="M 0 0 L 10 0 L 7 5 L 3 5 Z">
    <s:stroke>
        <s:SolidColorStroke color="0x000000"/>
    </s:stroke>
</s:Path>

传奇

  • M:移到(不画)
  • L:画线到
  • Z:关闭形状

有关更多信息,请阅读文档

于 2013-07-08T14:47:58.970 回答
1

如果您查看 ButtonSkin 类的源代码,您可以看到它们是如何创建常用的 Button 皮肤的。本质上,它们使用相互分层的类并根据状态修改这些属性。

每当我需要新的 Button 皮肤时,我都会从标准 Button 皮肤开始,并替换示例以帮助您入门。一开始有点痛苦,但是一旦你掌握了路径和图形组件的窍门,你就可以飞了。

于 2013-07-08T13:18:57.420 回答