日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側工具欄

新聞中心

這里有您想知道的互聯網營銷解決方案
Flex渲染機制中外部Flex渲染器用法指導

你對Flex渲染機制是否熟悉,這里和大家分享一下Flex渲染機制中外部Flex渲染器的概念,相信本文介紹一定會讓你有所收獲。

江州ssl適用于網站、小程序/APP、API接口等需要進行數據傳輸應用場景,ssl證書未來市場廣闊!成為創(chuàng)新互聯建站的ssl證書銷售渠道,可以享受市場價格4-6折優(yōu)惠!如果有意向歡迎電話聯系或者加微信:028-86922220(備注:SSL證書合作)期待與您的合作!

Flex渲染機制之外部Flex渲染器

這種Flex渲染器的MXML標記和ActionScript代碼與使用該渲染器的列表位于同一文件中。代碼與文件中的其余代碼內聯。您應該還記得我說過,應該將內聯渲染器視作單獨的類。事實上,Flex編譯器提取這些內聯代碼并為您創(chuàng)建類。內聯渲染器的優(yōu)勢在于代碼與列表位于同一位置,但是如果渲染器變得復雜時,這又變成了劣勢。本文中我將向您展示如何自己創(chuàng)建類。

將Flex渲染器提取到一個外部文件有幾個優(yōu)勢:

◆渲染器可輕松用于多個列表中

◆代碼更容易維護

◆可以使用FlexBuilder的“設計”視圖草擬出最初的渲染器

MXML渲染器

在第1部分中,您看到有一個復雜的渲染器用于DataGrid:

 
 
 
  1.  
  2.  
  3.  
  4.  
  5.  
  6. overridepublicfunctionsetdata(value:Object):void{  
  7. super.data=value;  
  8. vartoday:Number=(newDate()).time;  
  9. varpubDate:Number=Date.parse(data.date);  
  10. if(pubDate>today)setStyle("backgroundColor",0xff99ff);  
  11. elsesetStyle("backgroundColor",0xffffff);  
  12. }  
  13. ]]> 
  14.  
  15.  
  16. scaleContent="true"/> 
  17.  
  18.  
  19.  
  20.  
  21.  
  22.  
  23.  

 ◆Flex渲染器基于HBox,包含一個Image和一個Text,并且根據項目記錄的pubDate字段設置背景色??梢允褂靡韵虏襟E將同一Flex渲染器編寫為一個外部文件:

如果您使用FlexBuilder,請新建一個MXMLComponent文件(我將我的文件命名為GridColumnSimpleRenderer,您可以隨意命名),將根標記設置為HBox。不必擔心大小。

如果您只使用SDK,請新建一個MXML文件(將它命名為GridColumnSimpleRenderer.mxml),將根標記設置為HBox。
在文件打開時,復制之間的所有內容,但不要復制那些標記,因為文件中已有它們。結果應該如下:

 
 
 
  1.  
  2. width="400"height="300"> 
  3.  
  4. overridepublicfunctionsetdata(value:Object):void{  
  5. super.data=value;  
  6. vartoday:Number=(newDate()).time;  
  7. varpubDate:Number=Date.parse(data.date);  
  8. if(pubDate>today)setStyle("backgroundColor",0xff99ff);  
  9. elsesetStyle("backgroundColor",0xffffff);  
  10. }  
  11. ]]> 
  12. scaleContent="true"/> 
  13.  
  14.  
  15.  

 保存此文件。

現在修改DataGridColumn定義,方法是刪除內聯渲染器并將它替換為以下內容:

 
 
 
  1. itemRenderer="GridColumnSimpleRenderer"> 

現在運行這個應用程序。您會大吃一驚。因為行很高。這是因為渲染器上的height="300"。

◆決定Flex渲染器的寬度和高度

List控制始終設置渲染器的寬度。本例中將忽略明確的width="400"。您應當編寫自己的渲染器,假設用戶更改列或列表寬度是寬度會更改。

高度則是另一回事。如果列表設置了明確的rowHeight,它會將這個高度強加到各行,忽略您對渲染器設置的任何高度。但是,如果您將列表的variableRowHeight屬性設置為true,則列表會慎重考慮渲染器的高度。在本例中,高度明確設置為300,所以各行為300像素高。

要修復它,請從渲染器文件中刪除明確高度,應用程序即可正確運行。


本文題目:Flex渲染機制中外部Flex渲染器用法指導
網站地址:http://www.dlmjj.cn/article/djceijh.html