91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Flex4與自定義布局有什么關系

發布時間:2021-12-04 16:03:10 來源:億速云 閱讀:128 作者:小新 欄目:編程語言

這篇文章將為大家詳細講解有關Flex4與自定義布局有什么關系,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

Flex4與自定義布局

如果您還不熟悉Flex4的***功能,那么有些內容肯定是您想要了解的。Flex4/Spark組件架構的新功能之一是可以定制一個容器的布局而不必改變容器本身。您需要做的就是定義一個自定義布局。

Flex4/Spark架構中的容器并不控制它們自己的布局。相反,每種容器具有一個布局屬性,用于確定如何在屏幕上設置子元素的布局。可以使用一個單獨的Group容器,并賦予其一個垂直布局、水平布局或平鋪布局,這取決于您將如何創建它。
代碼很簡單,如下所示:

<s:layout> <s:VerticalLayout/> </s:layout>

不過真正的好處在于您不必局限于框架中定義的默認布局。您可以輕松定制BaseLayout類來實現自己定制的布局邏輯。下面是一個簡單的例子,顯示了如何實現一個在原點周圍順時針放置組件的布局。只要單擊左下方的按鈕就可以將更多按鈕添加到布局。

下面是主應用程序文件的代碼。可以看到,代碼相當簡單。這就是一個DataGroup,有點像一個重復程序(repeater),它包含一組按鈕。這個容器的布局基于一個自定義布局實現。在creationComplete中,填充DataGroup的數據提供程序,從而在布局中創建按鈕實例。

可以看到,DataGroup實例的布局受CircularLayout類控制(該類如下所示)。該類只是循環遍歷datagroup對象的子對象并將它們按順時針方向放在一個圓圈內。我查看了VerticalLayout類的源代碼,弄清了它的工作方式,并由此開始構建自己的布局實現。

package  {  importmx.core.ILayoutElement;   importspark.layouts.supportClasses.LayoutBase;   publicclassCircularLayoutextendsLayoutBase  {  overridepublicfunctionupdateDisplayList(w:Number,h:Number):void  {  super.updateDisplayList(w,h);   if(!target)  return;   varlayoutElement:ILayoutElement;  varcount:uint=target.numElements;   varangle:Number=360/count;  varradius:Number=Math.min(target.width/2,target.height/2)-25;   varw2:Number=target.width/2;  varh3:Number=target.height/2;   for(vari:int=0;i<count;i++)  {  layoutElement=target.getElementAt(i);   if(!layoutElement||!layoutElement.includeInLayout)  continue;   varradAngle:Number=(angle*i)*(Math.PI/180);   var_x:Number=Math.sin(radAngle);  var_y:Number=-Math.cos(radAngle);   layoutElement.setLayoutBoundsPosition(w2+(_x*radius)-25,h3+(_y*radius)-10);  }  }  }  }   <s:ItemRenderer xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/halo">  <s:states> <s:Statenames:Statename="normal"/> <s:Statenames:Statename="hovered"/> </s:states>  <s:layout> <s:BasicLayout/> </s:layout>  <s:Buttonlabels:Buttonlabel="{data}"baseColor.hovered="#FF0000"/>  </s:ItemRenderer>

這個示例中使用的項目渲染器實際上是最基本的。它是一個只包含一個按鈕的ItemRenderer實例,簡單明了并且很容易看到產生的結果。

關于“Flex4與自定義布局有什么關系”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

通州区| 江津市| 门源| 新郑市| 聂拉木县| 东丰县| 泰安市| 尉氏县| 堆龙德庆县| 德惠市| 江达县| 镇雄县| 蚌埠市| 盱眙县| 察哈| 济南市| 锦屏县| 信阳市| 东光县| 平远县| 盐源县| 苍梧县| 濮阳县| 永康市| 灯塔市| 平利县| 通许县| 莫力| 崇左市| 罗山县| 佛学| 柘城县| 朝阳区| 阳信县| 陕西省| 安阳县| 乌鲁木齐县| 松潘县| 东丰县| 禹城市| 邻水|