国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

學習筆記 在Flex內應用CSS樣式

開發 后端
在Flex內應用CSS樣式的概念你是否了解,這里和大家分享一下,在選擇用Flex實現CSS的方法必須基于環境和條件。在考慮設計實現的可用選項時,最好是從較高的層次審視應用程序。

本文和大家重點討論一下在Flex內應用CSS樣式,選擇用Flex實現CSS的方法必須基于環境和條件。如下的這些方法是用Flex實現CSS樣式時最為常用的。

在Flex內應用CSS樣式

選擇用Flex實現CSS的方法必須基于環境和條件。在考慮設計實現的可用選項時,最好是從較高的層次審視應用程序。如下的這些方法是用Flex實現CSS時最為常用的。

設置一個實例(內聯)上的樣式

擴展了FlexUIComponent基類的Flex組件允許作為內聯屬性設置常見樣式—換言之,即在MXML組件聲明標簽內(參見清單1)。一個顯示對象的布局屬性通常對該對象惟一,所以常常能夠看到某個組件被顯式地設置了如下這些屬性之一:x、y、height、width、top、right、left、bottom、horizontalCenter、verticalCenter、horizontalAlign和verticalAlign。

清單1.用MXML作為某個組件實例的屬性設置樣式    
 

  1. <mx:Buttonidmx:Buttonid="volumeIcon"cornerRadius="0"alpha="0.9" 
  2.  verticalCenter="0"enabled="true"toolTip="VolumeControl" 
  3.  click="toggleVolumeControl();"/> 

清單1展示了設置樣式屬性的一個函數示例,這些屬性對id值為volumeIcon的Button組件的這個特定實例是惟一的。由于我知道它是惟一一個需要這些特定樣式值的按鈕,因此我已經顯式地設置了此特定按鈕的cornerRadius、alpha和verticalCenter。

設置MXML組件標簽上的樣式屬性的一條經驗是,只有在知道所設置的樣式值特定于該組件的情況下才以這種方式設置此屬性。比方說,您的應用程序要求一個容器能夠垂直堆疊顯示對象而不在其間留空隙。同時,您知道應用程序內的其他VBox容器則確實需要顯示對象之間有空隙。在這種情況下,您應該在VBox組件的該實例上顯式地設置verticalGap屬性,如清單2所示。

清單2.在VBox容器組件的這個實例上verticalGap被顯式地設為0    
 

  1. <mx:VBoxidmx:VBoxid="myVBox"verticalGap="0"  
  2.  x="15"y="15"width="100%"height="100%"> 
  3.     
  4. (...)  
  5.     
  6. </mx:VBox> 

 在MXML內嵌入CSS樣式

該方法所涉及到的是用<mx:Style/>標簽將樣式或資源直接嵌入到一個MXML文件內。出于實用的目的,現在需要在其中直接將樣式信息嵌入到MXML文件的實例很少。最重要的是要認識到如果應用程序包含很多被嵌入的CSS,那么隨著應用程序的增長,設計將越來越難以維護。認識到這一點,在使用這種方法時,要十分慎重,只有在需要的時候才使用它。清單3提供了嵌入樣式聲明的一個例子,該聲明應該保留在一個外部CSS文件內以便獲得更好的代碼可維護性。

清單3.將樣式直接嵌入到MXML應用程序文件內    
 

  1. <?xmlversionxmlversion="1.0"encoding="utf-8"?> 
  2. <mx:WindowedApplication 
  3.  xmlns:mx="http://www.adobe.com/2006/mxml" 
  4.  layout="absolute" 
  5.  showFlexChrome="false" 
  6.  borderStyle="none" 
  7.  keyUp="{this.onKeyStrokeEvent(event);}"> 
  8.    
  9.    
  10.  <mx:Style> 
  11.   .bGroup{  
  12.    borderSides:"left,bottom,right";  
  13.    borderStyle:"solid";  
  14.    borderColor:#6d6f71;  
  15.    borderLeftThickness:3;  
  16.    borderRightThickness:3;  
  17.    borderBottomThickness:1;  
  18.    dividerColor:#6d6f71;  
  19.    dividerThickness:3;  
  20.   }  
  21.  </mx:Style> 
  22.    
  23.  <mx:Script> 
  24.   <![CDATA[  
  25.      
  26.    (...)  

 不過,這并不是說它將永遠不會發生。清單4就是我基于FlexAplicationControlBar而為我的應用程序所構建的一個向下擴展(scaled-down)的組件。在所提供的設計內,控制欄內的每個按鈕實際上都是一個簡單的文本單詞,看上去更像是一個鏈接,而非按鈕。此外,所有這些單詞鏈接之間都有一個小的bullet分隔符。由于我已經有了整個應用程序的設計,因此我知道這種bullet分隔符是應用程序主控制欄所特有的,在任何其他地方都不會出現。最為重要的是,由于bullet在同一個組件內出現若干次,因此非常有必要將此圖像作為其自己的私有類嵌入到這個MXML文件內,以便我能從放置在這些鏈接之間的每個圖像控件中綁定它。否則,結果很有可能是正在創建的同一個圖像卻具有多個實例,這是對系統資源的一種浪費。

清單4.直接嵌入一個圖像    
 

  1. <?xmlversionxmlversion="1.0"encoding="utf-8"?> 
  2. <mx:ApplicationControlBarxmlns:mxmx:ApplicationControlBarxmlns:mx="http://www.adobe.com/  
  3. 2006/mxml"> 
  4.  
  5. <mx:Script> 
  6. <![CDATA[  
  7.    
  8. [Embed(source="assets/bullet_black.png")]  
  9. [Bindable]  
  10. privatevarbullet:Class;  
  11.  
  12. ]]> 
  13. </mx:Script> 
  14.  
  15.  <mx:HBoxxmx:HBoxx="10"y="10"id="hbox"horizontalGap="10"  
  16. width="350"> 
  17.   <mx:LinkButtonlabelmx:LinkButtonlabel="Help"styleName="appBarButton"/> 
  18.   <mx:Imagesourcemx:Imagesource="{bullet}"/> 
  19.   <mx:LinkButtonlabelmx:LinkButtonlabel="About"styleName="appBarButton"/> 
  20.   <mx:Imagesourcemx:Imagesource="{bullet}"/> 
  21.   <mx:LinkButtonlabelmx:LinkButtonlabel="Minimize"styleName="appBarButton"/> 
  22.   <mx:Imagesourcemx:Imagesource="{bullet}"/> 
  23.   <mx:LinkButtonlabelmx:LinkButtonlabel="Quit"styleName="appBarButton"/> 
  24.  </mx:HBox> 
  25. </mx:ApplicationControlBar> 
  26.  

 外部CSS樣式表

一個Flex或AIR應用程序在其源代碼目錄的根部具有一個MXML文件,應用程序可以基于Application類(Flex)或WindowedApplication類(AIR)。這個文件就是默認的MXML應用程序文件,開始于<mx:Application/>或<mx:WindowedApplication/>。應用程序的樣式表源代碼應該立即出現在應用程序基類聲明之后(參見清單5)。

清單5.在除主應用程序MXML文件之外的任何文件內聲明樣式表都會導致錯誤    
 

  1. <?xmlversionxmlversion="1.0"encoding="utf-8"?> 
  2. <mx:WindowedApplication 
  3.  xmlns:mx="http://www.adobe.com/2006/mxml" 
  4.  layout="absolute" 
  5.  showFlexChrome="false" 
  6.  dropShadowEnabled="false" 
  7.  borderStyle="none" 
  8.  applicationComplete="{this.appInit(event);}" 
  9.  > 
  10.    
  11.  <mx:Stylesourcemx:Stylesource="com/passalong/assets/RED_SKIN_MAIN.css"/> 
  12.    
  13.  <mx:Script> 
  14.   <![CDATA[  
  15.    ...  

 ◆保持應用程序樣式設置的最簡便也是最安全的方法是使用外部樣式表。實際上,從一個CSS文件就能合理保存一個大型應用程序的所有樣式。我選擇只使用一個CSS文件,出于兩個原因:第一個原因是我將始終知道到哪里可以找到我的樣式設置;第二個原因是在團隊開發情況下,其他開發人員也可以很容易找到樣式。此外,一種好的做法是很好地組織該文件,因為隨著應用程序的增長,CSS文件也必然會增長。

在構建您自己的主應用程序CSS文件時,通常一種好的做法是首先放置那些默認的組件樣式聲明。比如,若想要所有的工具提示在應用程序中都具有同樣的外觀,就可以使用ToolTip作為樣式名并將其放置在文件的開始。我趨向于將tooltip放置在應用程序的所有內容之前,以便讓我的應用程序盡量的保持用戶友好性。因此,tooltip組件在應用程序內出現的次數比其他任何組件都要多。由于默認組件樣式對應用程序的整體觀感具有巨大的影響,所以您需要能夠快速和容易地訪問到它們。這也是為什么要將這些樣式放在首位的原因了。

請注意在大多數應用程序內,為每個組件創建一個默認樣式并不意味著就完事大吉了。Button組件就是這樣一個例子。同樣地,要讓CSS代碼保持整齊,可以考慮對組件樣式子集進行分組。比如,三個稱為Button.musicPlayerPlay、Button.pageDown和Button.backToMenu的可選按鈕樣式將被一個挨一個地放置在樣式表內并被來自其他樣式組的注釋所分隔。

 【編輯推薦】

  1. 四種聲明Flex CSS樣式的基本方法
  2. FlexBuilder4十大新特性閃亮登場
  3. 探索Flex和CSS的強大功能
  4. FlexBuilder3.0與Eclipse3.4的完美結合
  5. 解析Flex應用開發步驟 新特性和技術框架 
責任編輯:佚名 來源: ibm.com
相關推薦

2010-08-06 13:22:48

FlexCSS

2010-08-02 13:04:04

Flex3

2010-08-09 15:19:29

Flex滾動條

2010-08-06 14:52:35

FlexCSS層疊樣式表

2010-08-10 15:26:38

Flex應用程序

2010-08-09 10:34:05

Flex背景

2010-08-06 14:28:55

Flex CSS樣式

2010-07-29 13:18:45

Flex右鍵菜單

2010-07-27 10:39:25

Flex組件

2010-08-04 09:26:27

Flex數據

2010-08-10 16:41:54

FlexJSP

2010-07-29 15:36:23

Flex安全沙箱

2010-08-09 15:30:00

Flex字體

2010-07-27 15:49:28

Flex

2010-08-12 11:05:33

Flex數據綁定

2010-08-13 10:01:46

Flex樣式定義

2010-08-09 10:21:56

XMLFlex

2010-08-13 09:47:58

Flex樣式定義

2010-08-13 09:38:09

Flex樣式定義

2010-08-03 09:54:20

Flex鼠標樣式設置
點贊
收藏

51CTO技術棧公眾號

欧美a级在线观看| 欧美 日韩精品| 日本另类视频| 精品国产91乱码一区二区三区| 蜜臀视频一区二区三区| 久久不射2019中文字幕| 性欧美xxxx交| 日本蜜桃在线观看视频| 亚洲综合清纯丝袜自拍| 久久久性生活视频| 亚洲bt欧美bt精品777| 中文字幕国产亚洲| av有声小说一区二区三区| 欧美日韩精品在线视频| 国产理论在线播放| 国产不卡在线播放| 日韩欧美三级一区二区| 欧美老女人另类| 欧美日韩高清在线观看| 91精品久久久| 一本色道久久综合亚洲精品按摩| 日韩高清不卡av| av在线三区| 大片免费播放在线视频| 日韩伦理一区二区| 久久久国产成人精品| 麻豆免费在线观看| 欧美精品日韩一本| 真不卡电影网| 欧美午夜美女看片| 久久99国产精品二区高清软件| 日韩av在线免费播放| 新片速递亚洲合集欧美合集| 日韩精品欧美激情| 久久免费高清视频| 亚洲人metart人体| 91精品国产自产91精品| 大胆日韩av| 自拍偷拍99| 国产精选一区二区三区| 国产精品又粗又长| 国产99久久久久久免费看农村| 久久精品国产精品亚洲色婷婷| 国内精品伊人久久久久av一坑| www一区二区www免费| 一区二区三区不卡在线观看 | 国产97人人超碰caoprom| 亚洲美女毛片| 欧美三级午夜理伦三级富婆| 欧美成人官网二区| 深夜日韩欧美| 久久久精品动漫| 91污片在线观看| 国产在线1区| 国产区亚洲区欧美区| 麻豆精品久久久| 中文有码在线观看| 久久在线免费观看视频| 欧美性xxxx极品hd欧美风情| 欧美男体视频| 久久人人九九| 欧美视频中文在线看| 日本三级韩国三级欧美三级| 国产日韩欧美电影在线观看| 国产日产欧美一区二区三区| 青草青在线视频| 亚洲综合中文字幕在线| 色综合av在线| 国产一卡不卡| 中文字幕视频在线| 国产精品天天狠天天看| 天天在线视频色| 久久人人97超碰精品888| 欧美激情综合在线| 福利一区二区三区视频在线观看| 欧美三级网色| 日韩电影网在线| 成人网在线免费视频| 超碰国产精品一区二页| 久久精品人成| 欧美丰满老妇| 久久精品国产美女| 国产精品美女久久久久久久久久久| 久久久久久一区二区三区四区别墅 | 久久99热只有频精品91密拍| 欧美久久久久久久久中文字幕| 亚洲一区二区三区免费| 激情乱色小说视频| 久久九九有精品国产23| 日韩电影一区二区三区四区| 亚洲图片123| 视频在线观看成人| 欧美情侣性视频| 久久精品电影| 日韩精品第二页| 日本成人免费| 国产精品永久入口久久久| 日韩精品极品视频免费观看| 天天综合一区| www.三区| 国产精品免费区二区三区观看 | 久久免费99精品久久久久久| 亚洲欧洲激情在线| 久久午夜羞羞影院免费观看| 欧美黄色一区| 97视频一区| 123区在线| 免费特级黄色片| 国产精品初高中精品久久| 中文字幕不卡在线视频极品| 国产欧美视频一区二区| 日本欧美一区二区三区乱码| 色综合综合网| 在线日韩成人| 国产精品麻豆| 最近中文字幕免费mv2018在线 | 少妇视频在线观看| 日本免费看黄色| 亚洲伊人久久综合| 69av在线播放| 亚洲午夜精品久久久久久性色| 国产精品久久久久一区| 肉肉av福利一精品导航| 欧美日本一区| 中文字幕人成人乱码| 国产高清在线一区| 欧美一级电影在线| 精品无人国产偷自产在线| 性做久久久久久免费观看欧美| 99精品黄色片免费大全| 国产69精品久久久久777| 免费观看日韩av| 人人超碰91尤物精品国产| 国产精品成久久久久| 日韩系列在线| 精品大片一区二区| 久久亚州av| 亚洲第一论坛sis| 91麻豆桃色免费看| 国产婷婷成人久久av免费高清| 在线视频一区二区三| 欧美午夜宅男影院| 在线视频欧美精品| 欧美日韩亚洲综合一区| 91精品福利在线一区二区三区| 国产精品综合视频| 国产寡妇亲子伦一区二区| 91蜜桃网址入口| 麻豆9191精品国产| 亚洲美女动态图120秒| 五月天亚洲精品| 亚洲成av人片在线观看无码| 亚洲国产中文字幕久久网| 91精品麻豆日日躁夜夜躁| 日韩欧美国产中文字幕| 欧美三级午夜理伦三级中视频| 在线视频你懂得一区| 精品国产乱码久久久久久久| 亚洲国产精品成人精品| 中文字幕亚洲一区在线观看 | 羞羞网站免费观看| 国产激情在线视频| 裤袜国产欧美精品一区| vam成人资源在线观看| 国产精品嫩模av在线| 亚洲精品二区三区| 精品无人区卡一卡二卡三乱码免费卡 | 亚洲国产电影在线观看| 欧美午夜电影在线| 色中色一区二区| 久久亚洲欧美日韩精品专区 | 久久91超碰青草是什么| 91亚洲午夜在线| 最新av在线免费观看| 久久久免费视频网站| 欧美视频免费一区二区三区| 8av国产精品爽爽ⅴa在线观看 | 欧美一区二区三区日韩| 一本一道久久a久久精品逆3p | 国产精品wwwww| 3d成人动漫在线| 日韩免费成人| 国产在线精品不卡| 色哟哟精品一区| 欧美一级bbbbb性bbbb喷潮片| 一区二区在线观| 日本精品在线| 91视频久久| 国产欧美日韩不卡| 亚洲女在线观看| 日本精品视频一区| 麻豆传媒视频在线| 欧美好骚综合网| 国产日本亚洲高清| 欧美日韩成人网| 亚洲最大综合网| 悠悠资源网亚洲青| 久久国产综合精品| 亚洲欧美日韩国产成人| 亚洲精品一区二区三区樱花|