Проблема с меткой CollapsibleAccordion не отображается при переносе с Flex3 на Flex4 - PullRequest
0 голосов
/ 11 мая 2011

Складной Аккордеон. У меня есть два холста внутри CollapsibleAccordion, и все работает нормально, но единственная проблема заключается в том, что я не могу видеть метки при переносе своего кода в Flex4 из Flex3.

Код для этой проблемы ниже:

<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"                
            xmlns:cal="cal.*"
            layout="absolute"
            addedToStage="stage_init()"
applicationComplete="init()"                            
        xmlns:geometry="com.degrafa.geometry.*"
        xmlns:degrafa="com.degrafa.*"
        xmlns:paint="com.degrafa.paint.*"
        xmlns:containers="flexlib.containers.*"
        xmlns:flexlib_controls="flexlib.controls.*"
        xmlns:mdi_containers="flexlib.mdi.containers.*"
        xmlns:auto="com.hillelcoren.components.*" 
        xmlns:local="*" backgroundColor="#f7fafe" backgroundGradientColors="[#f7fafe, #6caaeb]"
        xmlns:components="CollapsibleAccordion.*"
        xmlns:notifications="c7.views.components.notifications.*"
        xmlns:dbview="c7.views.apps.dashboard.*"
        modalTransparency="0.8" preloader="c7.views.components.Pre"
        modalTransparencyColor="0x000000" verticalScrollPolicy="auto"
        backgroundSize="100%"               
        xmlns:components1="c7.views.components.*" 
        xmlns:notification="c7.views.components.notification.*" 
        xmlns:news="c7.views.components.news.*">    
    <mdi_containers:MDICanvas id="mdic" horizontalScrollPolicy="off" verticalScrollPolicy="off"
        visible="{!GlobalModel.getInstance().dashboard_mode}"
         minWidth="{top_bar.width}"
        width="100%" height="100%" top="{top_bar.height}" backgroundAlpha="0">                              
       <mx:Canvas id="cvs_widget_bar" right="0" top="0" height="100%">
            <components:CollapsibleAccordion id="collapsibleAccordion1" height="100%" top="0" right="0"
                orientation="left" barSize="30" currentWidth="30" openSize="150"
                drawerButtonStyle="drawerButton" closeButtonStyle="drawerCloseRight" accordianStyle="drawerAccordion">
                <mx:Canvas width="100%" top="0" right="0" height="100%" label="Widget Bar">

                </mx:Canvas>
                <mx:Canvas width="100%" height="100%" label="Feedback" icon="{IconUtility.getClass(cvs_comment,'assets/cloud_main/images/article-48x48.png')}"
                    id="cvs_comment" top="0" right="0">

                </mx:Canvas>
            </components:CollapsibleAccordion>
        </mx:Canvas>    

Если вам нужно больше разъяснений или есть что спросить, дайте мне знать

Спасибо заранее Zeeshan

1 Ответ

1 голос
/ 11 мая 2011

Полагаю, вы используете встроенный шрифт для своего аккордеонного заголовка. Если это так, включите его в свой CSS.

mx|AccordionHeader
{
    textFieldClass: ClassReference("mx.core.UIFTETextField");
}

Для получения более подробной информации см. ссылку

Компоненты Spark используют классы FTE и TLF (оба представлены в FP 10) для рендеринга текста. Где компоненты mx используют TextField для рендеринга текста. Если мы не используем встроенные шрифты в вашем приложении, это не создаст никаких конфликтов с mx компоненты. Но если мы будем использовать встроенные шрифты, нам придется встраивать шрифты дважды, чтобы он работал с компонентами mx - embed с embedAsCFF = "false" (для mx) и с embedAsCFF = "true" (для spark) .But встраивать один и тот же шрифт дважды не рекомендуется, так как он увеличивает общий размер приложения swf (но, если я правильно помню, у меня даже это не сработало). То, что мы делаем, для компонентов mx мы явно указываем, какой класс из Пакет FTE и TLF, который будет использоваться для визуализации текста. Подробнее о том, какой класс использовать для какого компонента, см. Ссылку выше.

...