如何在 Flex 中实现组件创建或删除的效果

发布于 2024-09-26 00:45:11 字数 188 浏览 4 评论 0原文

我有多个绑定到 ArrayCollection 的 MXML 自定义组件(使用中继器)。因此,每次我从 ArrayColleciton 添加/删除项目时,新项目都会从屏幕上显示/消失。

有没有一种简单的方法可以使项目在创建时淡入并在删除时淡出?我想过使用状态和状态转换效果,但这会使我的应用程序的不同部分的事情变得有点复杂,因为这些组件管理状态。

I have multiple MXML custom components that I add on the fly (using a repeater) that is binded to an ArrayCollection. So everytime I add/remove item from the ArrayColleciton new items show/disappear from the screen.

Is there a straightforward way to make item fade in when they get created and fade out when they are removed? I thought of using states and state transition effects but that will make things a bit complicated at different part of my application for those components to manage the states.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

浪漫之都 2024-10-03 00:45:11

您需要“数据效果”而不是“状态转换”。创建效果是相同的,但设置方式略有不同。看一下这个列表:

http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/mx/core/UIComponent.html?filter_flex=4.1&filter_flashplayer=10.1& filter_air=2#top

具体来说,您可能希望在添加某些内容时使用addedEffect,在删除某些内容时使用removeEffect。您可能还想研究 hideEffect 和 showEffect 。

因此,您无需创建过渡数组,而是像 ActionScript 中的样式一样设置效果。在 MXML 中,将其设置为组件上的属性。

如果您的数据有可能滚出屏幕,我强烈建议不要使用中继器。转发器将渲染 dataProvider 中的每个元素。列表只会渲染屏幕上显示的元素。在这方面,列表要有效得多。

You need "Data effects" not "State Transitions". Creating the effect is the same, but the way you set it up is slightly different. Take a look at this list:

http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/mx/core/UIComponent.html?filter_flex=4.1&filter_flashplayer=10.1&filter_air=2#top

Specifically, you'll probably want to use addedEffect when something is added and removedEffect when something is removed. You may also want to investigate hideEffect and showEffect .

So, instead of creating a transitions array, you'll set the effect like it were a style in ActionScript. In MXML, set it like it were a property on the component.

And I strongly recommend not using repeaters if there is any chance your data will scroll off the screen. A repeater will renderer every element in your dataProvider. A list, will only render those elements that display on screen. Lists are much more effecient in this regards.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文