| 包 | mx.styles | 
| 类 | public class AdvancedStyleClient | 
| 继承 | AdvancedStyleClient    EventDispatcher   Object | 
| 实现 | IAdvancedStyleClient, IFlexModule, IMXMLObject | 
| 子类 | GlobalizationBase, Sort, SortField | 
| 语言版本: | ActionScript 3.0 | 
| 产品版本: | Flex 4.5 | 
| 运行时版本: | Flash Player 10, AIR 2.5 | 
IAdvancedStyleClient 接口的对象。该基类提供对象参与样式子系统时所需的方法和属性的实现。
 
  除了 IAdvancedStyleClient 接口之外,该对象还实现 IFlexModule 和 IMXMLObject 接口。IMXMLObject 接口包含使用 MXML 声明实例化该类时调用的 initialized 方法。该基类提供的 initialized 方法的实现会将该类实例添加到包含 MXML 声明的文档对象。有关详细信息,请参阅 initilized 方法的描述。
相关 API 元素
| 属性 | 由以下参数定义 | ||
|---|---|---|---|
| className : String [只读] 
      组件类的名称。  | AdvancedStyleClient | ||
![]()  | constructor : Object 
	 对类对象或给定对象实例的构造函数的引用。  | Object | |
| id : String 
      
      组件的标识。  | AdvancedStyleClient | ||
| inheritingStyles : Object 
      包含该非可视样式客户端实例的可继承样式的对象。  | AdvancedStyleClient | ||
| moduleFactory : IFlexModuleFactory 
      模块工厂作为用于查找样式管理器(控制此非可视样式客户端实例的样式)的上下文使用。  | AdvancedStyleClient | ||
| nonInheritingStyles : Object 
      此组件的非继承样式链的开头内容。  | AdvancedStyleClient | ||
| styleDeclaration : CSSStyleDeclaration 
      具有此对象声明的内嵌样式的样式声明。  | AdvancedStyleClient | ||
| styleManager : IStyleManager2 [只读] 
      返回此组件使用的 StyleManager 实例。  | AdvancedStyleClient | ||
| styleName : Object 
      
      该对象的样式值的源。  | AdvancedStyleClient | ||
| styleParent : IAdvancedStyleClient 
      组件的父项用于评估后代选择器。  | AdvancedStyleClient | ||
| 方法 | 由以下参数定义 | ||
|---|---|---|---|
      构造函数。  | AdvancedStyleClient | ||
![]()  | addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void 
	使用 EventDispatcher 对象注册事件侦听器对象,以使侦听器能够接收事件通知。  | EventDispatcher | |
      
      删除此组件实例的样式属性。  | AdvancedStyleClient | ||
![]()  | 
	将事件调度到事件流中。  | EventDispatcher | |
      
      为应用于该组件的类型选择器返回 CSSStyleDeclaration 对象数组,如果不存在则返回 null。  | AdvancedStyleClient | ||
      
      获取已在此组件的样式查找链中的某个位置设置过的样式属性。  | AdvancedStyleClient | ||
      
      如果 currentCSSState 不为 null,则返回 true。  | AdvancedStyleClient | ||
![]()  | 
	检查 EventDispatcher 对象是否为特定事件类型注册了任何侦听器。  | EventDispatcher | |
![]()  | 
	 表示对象是否已经定义了指定的属性。  | Object | |
      该类或扩展该类的类在 MXML 声明中使用时,调用 initialized 方法。  | AdvancedStyleClient | ||
![]()  | 
	 表示 Object 类的实例是否在指定为参数的对象的原型链中。  | Object | |
      
      如果 cssState 与 currentCSSState 匹配,则返回 true。  | AdvancedStyleClient | ||
      
      确定此实例与给定类型相同,还是属于给定类型的子类。  | AdvancedStyleClient | ||
      将样式更改传播到此样式客户端实例的子项。  | AdvancedStyleClient | ||
![]()  | 
	 表示指定的属性是否存在、是否可枚举。  | Object | |
      设置内部样式缓存值,以便 getStyle() 方法可以起作用。  | AdvancedStyleClient | ||
      将 EffectManager 注册为每个效果事件的事件侦听器之一。  | AdvancedStyleClient | ||
![]()  | 
	从 EventDispatcher 对象中删除侦听器。  | EventDispatcher | |
![]()  | 
     设置循环操作动态属性的可用性。  | Object | |
      
      对此组件实例设置样式属性。  | AdvancedStyleClient | ||
      检测对样式属性的更改。  | AdvancedStyleClient | ||
      
      首次初始化组件样式时,Flex 会调用 stylesInitialized() 方法。  | AdvancedStyleClient | ||
![]()  | 
	 返回此对象的字符串表示形式,其格式设置遵守区域设置特定的约定。  | Object | |
![]()  | 
	 返回指定对象的字符串表示形式。  | Object | |
![]()  | 
	 返回指定对象的原始值。  | Object | |
![]()  | 
	检查是否用此 EventDispatcher 对象或其任何祖代为指定事件类型注册了事件侦听器。  | EventDispatcher | |
className | 属性 | 
id | 属性 | 
inheritingStyles | 属性 | 
moduleFactory | 属性 | 
moduleFactory:IFlexModuleFactory| 语言版本: | ActionScript 3.0 | 
| 产品版本: | Flex 4.5 | 
| 运行时版本: | Flash Player 10, AIR 2.5 | 
模块工厂作为用于查找样式管理器(控制此非可视样式客户端实例的样式)的上下文使用。
实现
    public function get moduleFactory():IFlexModuleFactory    public function set moduleFactory(value:IFlexModuleFactory):voidnonInheritingStyles | 属性 | 
nonInheritingStyles:Object| 语言版本: | ActionScript 3.0 | 
| 产品版本: | Flex 4.5 | 
| 运行时版本: | Flash Player 10, AIR 2.5 | 
      此组件的非继承样式链的开头内容。getStyle() 方法只需访问 nonInheritingStyles[styleName],即可搜索整个与原型链接的链。此对象由 initProtoChain() 设置。开发人员通常不需要直接访问此属性。
     
      
实现
    public function get nonInheritingStyles():Object    public function set nonInheritingStyles(value:Object):voidstyleDeclaration | 属性 | 
styleDeclaration:CSSStyleDeclaration| 语言版本: | ActionScript 3.0 | 
| 产品版本: | Flex 4.5 | 
| 运行时版本: | Flash Player 10, AIR 2.5 | 
具有此对象声明的内嵌样式的样式声明。
实现
    public function get styleDeclaration():CSSStyleDeclaration    public function set styleDeclaration(value:CSSStyleDeclaration):void相关 API 元素
styleManager | 属性 | 
styleManager:IStyleManager2  [只读] | 语言版本: | ActionScript 3.0 | 
| 产品版本: | Flex 4.5 | 
| 运行时版本: | Flash Player 10, AIR 2.5 | 
返回此组件使用的 StyleManager 实例。
实现
    public function get styleManager():IStyleManager2styleName | 属性 | 
styleName:Object| 语言版本: | ActionScript 3.0 | 
| 产品版本: | Flex 4.5 | 
| 运行时版本: | Flash Player 10, AIR 2.5 | 
      
      该对象的样式值的源。styleName 属性的值可以是以下三种可能类型之一:
     
      
- 字符串,如“headerStyle”。该字符串命名了一个在 CSS 样式表中定义的类选择器。
 - CSSStyleDeclaration,如 
StyleManager.getStyleDeclaration(".headerStyle")。 - UIComponent。实现该接口的对象从引用的 UIComponent 中继承所有样式值。
 
实现
    public function get styleName():Object    public function set styleName(value:Object):voidstyleParent | 属性 | 
styleParent:IAdvancedStyleClient| 语言版本: | ActionScript 3.0 | 
| 产品版本: | Flex 4.5 | 
| 运行时版本: | Flash Player 10, AIR 2.5 | 
组件的父项用于评估后代选择器。父项也必须是要参加高级样式声明的 IAdvancedStyleClient。
实现
    public function get styleParent():IAdvancedStyleClient    public function set styleParent(value:IAdvancedStyleClient):voidAdvancedStyleClient | () | 构造函数 | 
public function AdvancedStyleClient()| 语言版本: | ActionScript 3.0 | 
| 产品版本: | Flex 4.5 | 
| 运行时版本: | Flash Player 10, AIR 2.5 | 
构造函数。
clearStyle | () | 方法 | 
getClassStyleDeclarations | () | 方法 | 
getStyle | () | 方法 | 
 public function getStyle(styleProp:String):*| 语言版本: | ActionScript 3.0 | 
| 产品版本: | Flex 4.5 | 
| 运行时版本: | Flash Player 10, AIR 2.5 | 
获取已在此组件的样式查找链中的某个位置设置过的样式属性。
因为此方法同样可用于获取任何类型的样式属性,所以返回值可能是 Boolean、String、Number、int、uint(用于 RGB 颜色)、Class(用于外观)或任何类型的对象。因此,返回类型被指定为 *。
如果要获取特定的样式属性,您需要了解其类型,而且通常希望将结果存储在该类型的某个变量中。可以使用 as 运算符或强制来完成。例如:
      var backgroundColor:uint = getStyle("backgroundColor") as int;
      
      or
      
      var backgroundColor:uint = int(getStyle("backgroundColor"));
      
     
      如果在样式查找链中的任何位置都未设置样式属性,则 getStyle() 方法的返回值为 undefined。请注意,undefined 是一个特殊值,它与 false、空字符串 ("")、NaN、0 或 null不同。如果没有有效的样式值,则总是 undefined。可以使用静态方法 StyleManager.isValidStyleValue() 来测试是否设置了值。
参数
styleProp:String — 样式属性的名称。
     
       | 
* — 样式值。
      
       | 
hasCSSState | () | 方法 | 
 public function hasCSSState():Boolean| 语言版本: | ActionScript 3.0 | 
| 产品版本: | Flex 4.6 | 
| 运行时版本: | Flash Player 10, AIR 2.5 | 
      
      如果 currentCSSState 不为 null,则返回 true。通常,您无需直接调用此方法。而是由 mx.styles.CSSCondition.matchesStyleClient() 方法进行调用。
     
      
请注意,Spark 组件将其外观状态用作伪状态。Halo 组件使用 currentState 属性。
Boolean — 如果 currentCSSState 不为 null,则返回 true。默认情况下,currentCSSState 与 currentState 相同。如果状态不存在,则返回 false。
      
       | 
initialized | () | 方法 | 
 public function initialized(document:Object, id:String):void| 语言版本: | ActionScript 3.0 | 
| 产品版本: | Flex 4.5 | 
| 运行时版本: | Flash Player 10, AIR 2.5 | 
该类或扩展该类的类在 MXML 声明中使用时,调用 initialized 方法。它在创建实现对象且初始化在 MXML 标签上指定的所有组件属性后调用。
      如果创建该对象的文档是 UIComponent(例如,应用程序、模块等),则将调用 UIComponent 的 addStyleClient 方法以将该对象添加到 UIComponent 的非可视样式客户端列表。这允许对象从文档继承样式。 
参数
document:Object — 创建此对象的 MXML 文档。
       | |
id:String — 文档对象用来引用此对象的标识符。
       | 
matchesCSSState | () | 方法 | 
 public function matchesCSSState(cssState:String):Boolean| 语言版本: | ActionScript 3.0 | 
| 产品版本: | Flex 4.5 | 
| 运行时版本: | Flash Player 10, AIR 2.5 | 
      
      如果 cssState 与 currentCSSState 匹配,则返回 true。通常,您无需直接调用此方法。而是由 mx.styles.CSSCondition.matchesStyleClient() 方法进行调用。
     
      
请注意,Spark 组件将其外观状态用作伪状态。Halo 组件使用 currentState 属性。
参数
cssState:String — CSSCondition.value 的可能值。该值表示此组件用于与 CSS 伪选择器匹配的当前状态。
     
       | 
Boolean — 如果 cssState 与 currentCSSState 匹配,则返回 true。默认情况下,currentCSSState 与 currentState 相同。如果不存在任何状态,则返回 null。
      
       | 
matchesCSSType | () | 方法 | 
 public function matchesCSSType(cssType:String):Boolean| 语言版本: | ActionScript 3.0 | 
| 产品版本: | Flex 4.5 | 
| 运行时版本: | Flash Player 10, AIR 2.5 | 
      
      确定此实例与给定类型相同,还是属于给定类型的子类。通常,您无需直接调用此方法。而是由 mx.styles.CSSCondition.matchesStyleClient() 方法进行调用。
     
      
参数
cssType:String — 一个 CSSSelector 对象。
     
       | 
Boolean — 如果 cssType 位于限定的类型选择器的层次结构中,则为 true。
      
       | 
notifyStyleChangeInChildren | () | 方法 | 
 public function notifyStyleChangeInChildren(styleProp:String, recursive:Boolean):void| 语言版本: | ActionScript 3.0 | 
| 产品版本: | Flex 4.5 | 
| 运行时版本: | Flash Player 10, AIR 2.5 | 
将样式更改传播到此样式客户端实例的子项。非可视样式客户端(即,不是 DisplayObject 的样式客户端)没有子项,因此该方法不针对非可视样式客户端执行任何操作。
参数
styleProp:String — 样式属性的名称。
     
       | |
recursive:Boolean — 是否将样式更改传播到子项的子项。
     
       | 
regenerateStyleCache | () | 方法 | 
registerEffects | () | 方法 | 
setStyle | () | 方法 | 
styleChanged | () | 方法 | 
 public function styleChanged(styleProp:String):void| 语言版本: | ActionScript 3.0 | 
| 产品版本: | Flex 4.5 | 
| 运行时版本: | Flash Player 10, AIR 2.5 | 
      检测对样式属性的更改。设置任何样式属性后,Flex 将调用 styleChanged() 方法,向其传递所设置样式的名称。
     
      
此方法是一种高级方法,可在创建 AdvancedStyleClient 的子类时覆盖。创建自定义类时,可以覆盖 styleChanged() 方法,以检查传递给它的样式名称,并对更改进行相应处理。这允许您覆盖现有样式的默认行为或添加自己的自定义样式属性。
参数
styleProp:String — 样式属性的名称;如果此样式客户端的所有样式均已更改,则为 null。
     
       | 
stylesInitialized | () | 方法 | 
 public function stylesInitialized():void| 语言版本: | ActionScript 3.0 | 
| 产品版本: | Flex 4.5 | 
| 运行时版本: | Flash Player 10, AIR 2.5 | 
      
      首次初始化组件样式时,Flex 会调用 stylesInitialized() 方法。
      
      
Tue Jun 12 2018, 11:04 AM Z
 
 隐藏继承的公共属性
 显示继承的公共属性