簡體   English   中英

Flex項目渲染器-閃爍圖像

[英]Flex item renderer - blink image

我有一個帶有他的ItemRenderer的列表,好吧,當我將數據發送到dataprovider時,在函數“設置數據”中輸入(覆蓋),我有兩個圖像和一個標簽,當發送數據時,我檢查是否圖像具有要設置的源,如果該項目具有該源,那么我沒有設置源來避免眨眼效果,但是它不起作用,為什么? 在這種情況下,我檢查圖像的來源,這是空的。

資源:

override public function set data( _data:Object ) : void {
    if (imgStatusMessage.source != _data.source) {
        imgStatusMessage.source = _data.source;
    }
}

...

<s:Image id="imgStatusMessage" width="15" height="15" visible="false"/>

然后,當item為'repaint'時,檢查此元素的屬性,如果_data var具有相同的值,則不要再次設置該值。

編輯:如果發送了更多數據,則除第一項外,所有項均工作正常; 僅第一項在一個圖像中出現眨眼問題。

您可以將其添加到列表定義中(它將關閉渲染器的回收):

<s:List>
   <s:layout>
      <s:VerticalLayout useVirtualLayout="false" />
   </s:layout>
</s:list>

看看問題是否仍然存在。

如果沒有,您可以像這樣保留它,但是它可能會影響大型列表的應用性能。 否則,您可能會以某種方式實施渲染器,使其不再設置source ,而是從某些預制集合中添加已制成的圖像,尤其是如果“源”是URL而不是嵌入的BitmapAsset。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM