繁体   English   中英

如何在Flex中刷新itemrenderer

[英]How to refresh itemrenderer in flex

我开发了一个flex应用程序,其中包含一个显示项目列表的itemrenderer。 问题是,如果我选择一个项目,则背景会突出显示,并且如果我转到另一页并再次回到同一页,则以前选择的项目仍会突出显示。 有什么解决方案可以使我在每次打开页面时刷新itemrenderer以清除突出显示的背景?

突出显示了一个itemrenderer实例(复选框和标签)

因此,当您说“转到另一个页面并返回”时,听起来就像是在导航到应用程序中的其他屏幕并返回到包含列表的屏幕。 该项目显示为已选择,因为您的视图正在重复使用。 这不是从头开始创建的新视图...

要从列表中删除选择,可以将列表的selectedIndex设置为-1,或者甚至可以将列表的selectedItem设置为null (或者可能undefined为docs状态)。 您可以在导航到下一个屏幕之前,或者在导航回到列表时,执行上述任一操作。

还有其他几种方法可以解决此问题:

  • 不要重复使用视图
  • 向后导航时,重置列表上的dataProvider
  • 等等...

但是设置selectedIndexselectedItem将是最有效的方法。

如Sunil所建议。 离开列表时,尝试重置列表的数据提供程序。 设置list.dataProvider = new ArrayCollection()。 或是否有数据列表。DataProvider= arrayCollectionThatYouHave

注意:如果您希望每次用户在视图堆栈中打开此视图时刷新整个屏幕数据,则侦听“ show”事件并重置dataprovider并在此事件中设置默认值。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM