<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    badqiu

    XPer
    隨筆 - 46, 文章 - 3, 評論 - 195, 引用 - 0
    數據加載中……

    flex國際化

    準備:

    flex3只支持兩種語言,en_US,ja_JP,而flex4中則支持多國語言,所以可以將flex4中的%FLEX_HOME%\frameworks\locale\zh_CN拷貝至flex3中。

     

    項目中增加國際化

    一.配置

    目錄結構:

    flex_src
        --locale
            --zh_CN
                   message.properties
            --en_US
                   message.properties

     

     message.properties內容使用UTF-8編碼.

     

    開發環境配置:

    在Eclipse開發環境中的Flex Compiler/Additional compiler arguments選項

    增加如下參數

     

    -locale zh_CN -locale en_US -source-path=locale/{locale}

     

     

    二.使用國際化

     

    Flex中提供了兩種方法使用本地化文件:

    1.使用@Resource

    <mx:Label text="@Resource(key='name', bundle='message')"/>

     

    其中 key 表示的是要取資源的 key , bundle 表示的是本地化文件,去掉 .properties 之后的名稱

     

    2.使用 ResourceManager

    <mx:Label text="resourceManager.getString("bundleName","key")"/>

     

    注意:如果容器中沒有resourceManager這個變量,可以使用ResourceManager.getInstance()代替resourceManager,因為ResourceManager是單態的。

     

    編譯檢查: 

    使用[ResourceBundle('message')]可以為編譯器提供編譯檢查,實際不需要指定這個也是可以的。

     

    <mx:Metadata>
    [ResourceBundle('message')]
    </mx:Metadata>

     

    三.動態修改當前語言

    ResourceManager.getInstance().localeChain = ['zh_CN'];  

     

    四.減少編譯大小

    由于flex是使用編譯器將國際化信息編譯進swf中,所以如果將所有的語言全部編譯進swf,會導致swf文件過于龐大。而正如國內的環境,如果你的用戶大部分都是中文用戶,實在沒有必要為了少量英文用戶而增加swf文件的大小。 所以最好的效果是 *獨立編譯*。即編譯出:

    main_zh_CN.swf  
    main_en_US.swf  

     

     參考: http://www.nbilyk.com/flex-localization-example

    當然這樣處理會麻煩一點,請具體參考你編譯出來的swf大小,相差不大的請也可以忽略此項。

     

     

    五. ant編譯

        <property name="FLEX_HOME" value="${env.FLEX_HOME}"/>
        
    <property name="FLEX_SWC" value="${basedir}/flex_libs"/>
        
    <property name="FLEX_SRC" value="${basedir}/flex_src"/>

        
    <target name="compile-flex">
            
    <echo message="FLEX_HOME:${FLEX_HOME}"/>

            
    <!-- tasks: mxmlc,compc,html-wrapper -->
            
    <taskdef resource="flexTasks.tasks" classpath="${FLEX_HOME}/ant/lib/flexTasks.jar" />

            
    <!-- 具體編譯參數請參考:http://www.k-zone.cn/zblog/post/flex-compiler-parameter.html -->
            
    <mxmlc
                
    file="${basedir}/flex_src/${flex.application.name}.mxml"
                output
    ="${basedir}/dist/web/flex/${flex.application.name}.swf"
                actionscript-file-encoding
    ="UTF-8"
                keep-generated-actionscript
    ="false"
                incremental
    ="true"
                compiler.show-actionscript-warnings
    ="true"
                compiler.show-binding-warnings
    ="true"
                compiler.show-unused-type-selector-warnings
    ="true"
                compiler.strict
    ="true">

                
    <!-- Get default compiler options. -->
                
    <load-config filename="${FLEX_HOME}/frameworks/flex-config.xml"/>

                
    <!-- List of path elements that form the roots of ActionScript class    hierarchies. -->
                
    <source-path path-element="${FLEX_SRC}"/>
                
    <!-- 需要編譯的locale -->
                
    <locale>zh_CN</locale>
                
    <locale>en_US</locale>
                
    <source-path path-element="${FLEX_SRC}/locale/{locale}"/>

                
    <!-- 消除編譯警告,允許源代碼路徑重疊或是包含現象 -->
                
    <allow-source-path-overlap>true</allow-source-path-overlap>

                  
    <!-- List of SWC files or directories that contain SWC files. -->
                
    <compiler.library-path dir="${FLEX_HOME}/frameworks" append="true">
                    
    <include name="libs" />
                    
    <include name="locale/{locale}" />
                
    </compiler.library-path>
                
    <!-- 自定義或第三方包 -->
                
    <compiler.library-path dir="${basedir}" append="true">
                    
    <include name="flex_libs" />
                
    </compiler.library-path>

                
    <compiler.debug>false</compiler.debug>
            
    </mxmlc>

        
    </target>

    posted on 2010-02-08 16:09 badqiu 閱讀(3300) 評論(0)  編輯  收藏


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 久久亚洲AV无码精品色午夜麻| aa级女人大片喷水视频免费| 亚洲国产女人aaa毛片在线| 破了亲妺妺的处免费视频国产 | 色se01短视频永久免费| 国产精品99爱免费视频| 亚洲爆乳成av人在线视菜奈实 | 老司机69精品成免费视频| 国产午夜亚洲精品不卡免下载| 亚洲欧洲自拍拍偷午夜色| 亚洲精品字幕在线观看| 国产aa免费视频| 成年女人18级毛片毛片免费观看| 99re6免费视频| 91视频精品全国免费观看| 免费的黄色网页在线免费观看| 亚洲熟伦熟女专区hd高清| 亚洲国产精品成人久久久| 亚洲一区二区影院| 亚洲αv久久久噜噜噜噜噜| 久久久久亚洲AV无码专区桃色| 免费va人成视频网站全| 精品免费国产一区二区| 四虎影视免费在线| 影音先锋在线免费观看| 成人免费a级毛片| 成人性生交大片免费看无遮挡| 蜜桃视频在线观看免费网址入口| 精品成在人线AV无码免费看 | 亚洲成aⅴ人片在线观| 亚洲精品中文字幕无乱码| 亚洲国产精品婷婷久久| 亚洲国产国产综合一区首页| 亚洲AV无码久久| 18gay台湾男同亚洲男同| 亚洲毛片无码专区亚洲乱| 亚洲免费中文字幕| 亚洲日本久久久午夜精品| 亚洲精品av无码喷奶水糖心| 亚洲欧美黑人猛交群| 久久精品国产亚洲av天美18|