如何在Adobe Flex中引用用作按钮图标的图像?

时间:2011-06-01 06:35:45

标签: flex actionscript-3 flash-builder

我正在开发一个Flex应用程序,我想在其中大致模拟我们在搜索Google图像时获得的内容。当我们将鼠标指针移到图像上时,它会放大一点,这样我们就可以更好地看到它并根据需要点击它。

知道我可以通过mouseOver / mouseOut事件使用图像并增加其大小,但事实是,当我使用时,用户更容易意识到它们是可点击的带图标的按钮(与普通图像相对)。

所以这就是问题所在。有没有办法通过按钮方法/属性改变(在这种情况下,它的高度和宽度)按钮图标?

如果这太令人困惑,我可以再解释一下。

感谢提前。

PS:我现在的做法是通过更改图标的src属性来切换到同一图片的另一个(更大)版本(需要存储每个图片的两个版本) 。但是,我正在使用setStyle方法来实现这一点,根据文档本身,它在性能方面不是很好。调整大小要比加载另一张只是旧版本旧版本的图片容易得多。

2 个答案:

答案 0 :(得分:1)

如果您的图片只是“稍微放大”,您可以使用一个(更大)版本(仅在底层Bitmap上设置smoothing = true)。这也可以实现从小版本到大版本的平滑过渡。并且手形光标是指示可点击性的好方法,而非常大的按钮看起来很奇怪。

答案 1 :(得分:1)

问题已在这些主题中提出

Create a button with an icon in actionscript

Set the icon of a Flex button with a Sprite in runtime

根据它们没有优雅的解决方案,但任务可以通过setStyle()或使用此片段完成: http://blog.benstucki.net/?p=42

另一种方法是使用像这样的黑客(图像上的透明按钮):

<s:Group width="100" height="20">
    <mx:Image source="picture_you_need.jpg" width="100%" height="100%" scaleContent="true" maintainAspectRatio="false"/>
    <s:Button id = "test_button" width="100%" height="100%" alpha="0.0"}"/>
</s:Group>
相关问题