Как контент динамически обновляется в flex - PullRequest
0 голосов
/ 16 июля 2009

Мне нужна ваша помощь по следующим причинам.

problem-1: В php мы можем легко перемещать одну страницу на другую и легко использовать функции различных типов из этих страниц. Во flex3, как я могу использовать различные типы страниц .mxml, например php. Пожалуйста, ведите меня с учебниками. Это будет очень полезно для меня.

problem-2: На той же странице некоторый контент динамически обновлял свой ресурс, выполняя одну задачу. Как я могу это сделать, пожалуйста, сообщите мне.

Ответы [ 2 ]

1 голос
/ 16 июля 2009

Для вашей второй проблемы у меня есть 2 файла

imageResize.mxml

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" viewSourceURL="srcview/index.html">
    <mx:Script>

        <![CDATA[
            import mx.collections.ArrayCollection;
            private var _imageHolderWidth:Number = 500;
            private var _imageHolderHeight:Number = 500;
            [Bindable]
            private var imageArrayCollection:ArrayCollection = new ArrayCollection();

            private function changeSize():void{
                this.imageHolder.width = this._imageHolderWidth *(this.widthSlider.value * 0.01);
                this.imageHolder.height = this.imageHolder.width;

            }

            private function addToTileList():void{

                var bitmapData : BitmapData = new BitmapData(this.imageHolder.width, this.imageHolder.height );
                var m : Matrix = new Matrix();
                bitmapData.draw( this.imageHolder, m );
                this.imageArrayCollection.addItem({bitmapData: bitmapData, width: this.imageHolder.width, height: this.imageHolder.height});
            }

        ]]>
    </mx:Script>

    <mx:Image id="imageHolder" source="@Embed('fx.png')" />

    <mx:HSlider id="widthSlider" width="400" y="520" maximum="100" value="100" minimum="1" labels="[1%, 50%, 100%]" snapInterval="1" change="{changeSize();}" liveDragging="true" />
    <mx:Button label="add to tile" click="{this.addToTileList();}"/>
    <mx:TileList x="520" dataProvider="{this.imageArrayCollection}" itemRenderer="TileListRenderer" />
</mx:Application>

второй файл TileListRenderer.mxml:

<?xml version="1.0" encoding="utf-8"?>
<mx:Canvas xmlns:mx="http://www.adobe.com/2006/mxml" width="100" height="140">
    <mx:Script>
        <![CDATA[
            import mx.utils.ObjectUtil;
            override public function set data(value:Object):void
            {
                super.data = value; 
            }
        ]]>
    </mx:Script>
    <mx:VBox horizontalAlign="center">
        <mx:Image id="thumbHolder" source="{new Bitmap(data.bitmapData)}" maxWidth="100" maxHeight="100" />
        <mx:Label text="{data.width}x{data.height}" />
    </mx:VBox>


</mx:Canvas>

Поскольку его легче увидеть с рабочим источником (правая кнопка мыши, чтобы увидеть источник):

blog.arnomanders.nl / загрузки / imageResize / imageResize.html

1 голос
/ 16 июля 2009

Вместо того, чтобы рассматривать ваше приложение Flex как серию страниц, вы можете вместо этого рассмотреть SWF "все в одном". Это значительно сокращает время навигации за счет более длительной начальной загрузки. Вы можете переключаться между различными представлениями с помощью вкладок или просмотра стеков. Если вы храните свои функции для каждой страницы отдельно, вы можете сделать это, реализовав каждую логическую «страницу» в качестве отдельного компонента MXML. Ваше приложение верхнего уровня MXML будет выглядеть примерно так:

<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" 
    xmlns:my="com.mycompany.myapp"
>
    <mx:ViewStack id="pageViewStack" width="100%" height="100%">
        <my:MyComponent1 width="100%" height="100%"/>
        <my:MyComponent2 width="100%" height="100%"/>
    </mx:ViewStack>
</mx:Application>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...