`
it_liuyong
  • 浏览: 100487 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

flex 自定义多个命名空间以及标签名

    博客分类:
  • flex
 
阅读更多
flex 自定义多个命名空间以及标签名 

2012-06-11 14:41:46|  分类: flex |  标签:flex  自定义  namespace  标签库  命名空间   |字号 订阅





1.建立起自定定义一些 控件 eg

MyButton,MyTextInput



2.在Lib包  新增xml到src目录下

ss-mainfest.xml //存放在 ss标签库命名空间 控件

<?xml version="1.0" encoding="UTF-8"?>
<componentPackage>
<component id="MyButton" class="com.sarsea.components.MyButton"/>
</componentPackage>
ss2-mainfest.xml //存放在 ss2标签库命名空间的控件
<?xml version="1.0" encoding="UTF-8"?>
<componentPackage>
<component id="MyTextInputOtherName" class="com.sarsea.components.MyTextInput"/>
</componentPackage>

这边顺便说下  一个控件可以放到N个命名空间,id属性 不一定要跟类名一样,id属性只是一个别名,用法例如:
<ss2:MyTextInputOtherName/>

3.右键项目属性=》flex库编译器


这样的选择 只能支持单个命名控件 ,要支持做个 可以编辑
.flexLibProperties文件(此文件就是项目目录下 跟src 同级别的  看不到的话 看后文)



 
<namespaceManifests>
    <namespaceManifestEntry manifest="ss-manifest.xml" namespace="http://www.sarsea.com/2012/flex"/>
</namespaceManifests>
改成
<namespaceManifests>
    <namespaceManifestEntry manifest="ss-manifest.xml" namespace="http://www.sarsea.com/2012/flex"/>
    <namespaceManifestEntry manifest="ss2-manifest.xml"    namespace="http://www.sarsea.com/2012/flex2"/>
</namespaceManifests>
这样就多加了一个命名空间
=======================================自定义标签库名=====================================
在src目录下新增一个design.xml文件,然后右键项目属性=》flex库构建路径=》资源=》把design.xml打钩 就ok了
或者到.flexLibProperties 里面手动添加
  <includeResources>
    <resourceEntry destPath="design.xml" sourcePath="design.xml"/>
    <resourceEntry destPath="com/sarsea/components/button.png" sourcePath="com/sarsea/components/button.png"/>
  </includeResources>

design.xml
<?xml version="1.0" encoding="utf8"?>
<design version="2">
   <namespaces>
     <namespace prefix="ss" uri="http://www.sarsea.com/2012/flex"/>
     <namespace prefix="ss2" uri="http://www.sarsea.com/2012/flex2"/>
   </namespaces>
   <categories>
       <category id="myControls" label="Sarsea组件" defaultExpand="true"/>
       <category id="myControls2" label="Sarsea组件2" defaultExpand="true"/>
   </categories>
   
   <components>
  <component id="MyButton"
       name="com.sarsea.components.MyButton"
       category="myControls">
  </component>
  <!--displayName  设计栏 控件的显示名字 -->
  <component id="MyTextInpust"
     displayName="MyTextInputControlName"
       name="com.sarsea.components.MyTextInput"
       category="myControls2">
  </component>
   </components>
</design>




这边总共分三个大的子节点:
<1>.namespace 这个就是用来管理标签库的命名的啦  其中uri一定要跟.flexLibProperties里面的 一一对应


2跟3的节点 是用来管理 控件 在设计栏  的显示

<2>.catogory管理控件的 类别控件夹


id:是一个唯一的标示 在 3的节点 有应用到
label:文件夹名字
defaultExpand:是否默认打开该 类别控件夹
另外:可能看到图中的MyButton的图标显示不一样  其实 是在 类文件里面设置的
package com.sarsea.components
{
import mx.controls.Button;


/**
  *
  * @author Hugo.Wang
  * 2012-6-11 10:32:45
  */
[IconFile("button.png")]//图片在 设计栏的 自定义控件栏显示
public class MyButton extends Button
{
  public function MyButton()
  {
   super();
  }
}
}

<3>.components 节点
id:也是一个唯一标示而已,貌似没啥用
name:就是控件类的具体位置 (这个一定要跟mainfest里面的class属性对应)
displayName:就是设计栏 控件的显示名字
cotegory:指定控件在哪个 类别控件夹里面

=====================================后续=============================================
(1)除去 过滤.flexLibProperties文件
点击



不要过滤的文件的钩钩 去掉 确定就ok了
分享到:
评论

相关推荐

    Flex4-in-a-day

    首先,文档开篇介绍了一些基本概念,比如MXML 2009、Namespaces(命名空间)、States(状态)以及MXML中新增的标签。在Flex4中,命名空间允许开发者定义和引用特定的资源,而状态则是用于描述组件在不同交互阶段下的...

    Adobe Flex编码指南V1.2(中文)

    - 如果存在多个命名空间,此部分应位于文件的最后。 4. **导入描述** - 通常按照以下顺序排列: 1. `flash` 包 2. `mx` 包 3. `com.adobe` 包 4. 公司内部组件 5. 第三方包(按字母顺序排序) 6. 项目内部包...

    Flex+as3.0源码

    AS3.0相比于之前的版本AS2.0,引入了更多的类库和API,支持命名空间、包结构、强类型系统以及更高级别的错误处理机制,极大地提高了开发效率和代码质量。 标题中的"Flex+as3.0源码"意味着你可能获得了一组使用Flex...

    Flex Call AS Class

    Flex Call AS Class是一个关于在Flex项目中使用ActionScript(AS3)编写类的实例教程。在Flex开发中,ActionScript是主要的编程语言,用于创建交互式的用户界面和应用程序。AS3是ActionScript的第三版,它引入了许多...

    flex as资料

    在AS3中,文件扩展名通常是.as,但main.asc可能是作者自定义的命名约定,表示这是项目的主要入口点或包含主要逻辑的地方。 2. fms.avi - 这可能是关于Flash Media Server(FMS)的视频教程或演示。FMS是Adobe提供的...

    flex优化全集 flex优化全集

    根据提供的标题、描述、标签及部分内容,我们可以总结出与Flex优化相关的多个知识点。这些知识点主要集中在提高Flex应用程序的性能上,涉及代码优化、资源管理、数据处理等方面。 ### Flex优化全集 #### 1. 数组...

    ArcGIS Flex API—高级篇

    特别是在处理密集的数据点时,通过聚合可以将多个点合并为一个代表性的点,以此来提高地图的可读性和性能。 - **自定义聚合**:例如,在给定的代码片段中展示了一个名为`AttrClusterer`的类,它继承自`...

    ASDoc生成ActionScript的API类文档

    这对于那些跨越多个包和文件的类尤其有用。 #### 五、示例 1. **指定单个类**: ```shell asdoc -source-path . -doc-classes comps.CraphingWidget comps.GraphingWidgetTwo ``` 这条命令假设`comps....

    templatefocus_23291(artistic-design).rar_FlashMX/Flex源码_FlashMX_

    【标签】"FlashMX/Flex源码 FlashMX" 指出这个压缩包内的内容与这两个技术有关。FlashMX源码意味着我们可以查看和修改用于创建Flash内容的原始代码,这对于学习和定制模板非常有帮助。而Flex是基于ActionScript的...

    New Folder.rar_Different_matlab GUI

    标签 "different matlab_gui" 明确指出这些代码是为了创建不同类型的MATLAB GUI而设计的,意味着我们将看到多个独立或者有特定功能的GUI界面。 在压缩包的文件名称列表中: 1. "three.m":这可能是一个名为“three...

    Flash Catalyst 和Flash Build 应用小技巧

    Flash Catalyst 默认将所有组件放置在一个名为“components”的目录中。为了避免意外覆盖,建议不要在这个目录中直接修改组件代码。 **注意事项**: - 当从FXP文件创建Flex项目或导入已有项目时,可以看到...

    G2DSpaceShooterTutorial

    此外,还可以创建使用多个组件的自定义游戏对象,以实现更高级的功能。 #### 七、碰撞检测 简单碰撞检测是游戏中不可或缺的一部分。Genome2D提供了内置的碰撞检测组件,允许轻松地实现物体之间的碰撞检测。这通常...

    ofla_demo.zip_DEMO_demo.fla_ofla_ofla Demo

    【标题】"ofla_demo.zip_DEMO_demo.fla_ofla_ofla Demo" 是一个压缩包文件,其中包含了一个名为 "ofla_demo.fla" 的源代码文件。这个标题暗示我们,这个文件可能与Adobe Flash相关的项目有关,因为 ".fla" 扩展名...

    FLASH 源码。。。很不错的

    "lm303"看起来并不像典型的Flash文件扩展名(如.as或.swf),所以它可能是一个内部命名约定,或者是其他类型的数据,比如一个配置文件或资源文件。通常,Flash项目可能包含ActionScript源文件(.as)、Flash文档(....

    19徐朋伟.zip

    压缩包内的子文件名为"miniprogram-2",这可能指的是一个微信小程序的项目文件,因为微信小程序的开发文件通常会以`miniprogram`为命名的一部分。 微信小程序是一种轻量级的应用开发平台,主要应用于移动端,由腾讯...

    xml、mxml总结

    2. **自定义标签**:用户可以根据需求自定义标签。 3. **元素必须闭合**:每个XML元素都必须有相应的结束标签。 4. **正确的嵌套**:所有XML元素都必须正确嵌套。 5. **文档必须有根元素**:每一个XML文档都必须有一...

    css页面布局40例

    20. **BEM命名法**: BEM(Block Element Modifier)是一种CSS命名规范,有助于提高代码的可读性和可维护性。 通过这些实例,你可以深入了解CSS在实际项目中的应用,熟练掌握各种布局技巧。不断实践和学习,你将成为...

    leborgneantoine.github.io

    CSS是Web开发中的关键组成部分,用于定义文本样式、颜色、布局、响应式设计等多个方面。 **关于CSS的知识点:** 1. **选择器与属性**:CSS通过选择器来选取HTML元素,然后应用样式。如类选择器(`.class`)、ID...

    csilviavr.github.io

    综上所述,"csilviavr.github.io"项目涵盖了HTML基础、CSS样式、GitHub Pages托管、响应式设计以及可能的JavaScript交互等多个知识点,是一个全面展现Web开发技能的实践项目。通过分析这个项目的源代码,我们可以...

    C58

    3. **层叠规则**:CSS中的“级联”意味着当多个样式规则应用于同一元素时,浏览器会根据优先级决定应用哪个规则。优先级通常取决于选择器的特异性、样式表的位置(内联、内部、外部)和`!important`声明。 4. **盒...

Global site tag (gtag.js) - Google Analytics