изменить XML, сгенерированный Flash? - PullRequest
1 голос
/ 09 июля 2011

Я новичок во флэш и ActionScript.

Я хочу изменить XML-файл флэш-памяти после его создания.

Вы можете посмотреть этот урок http://www.webwasp.co.uk/tutorials/A_IntAct-02-drag-drop/index.php здесь, когда я меняю позицию, я хочу новый XML-файл с обновлением.

Любая помощь очень ценится. Спасибо,

Ответы [ 2 ]

2 голосов
/ 09 июля 2011

Не имея практически никакого представления о том, что именно вы просите, я создал пример с квадратом, который можно перетаскивать. Когда его отбрасывают, он записывает xml в файл xml с координатами x и y отброшенного квадрата:

package 
{
    import flash.display.*;
    import flash.events.*;
    import flash.filesystem.*;
    import flash.utils.*;

    public class Main extends Sprite 
    {
        private var _square:Square;

        public function Main():void 
        {
            _square = new Square();
            _square.addEventListener(MouseEvent.MOUSE_DOWN, onSquareMouseDown);
            addChild(_square);

        }// end function

        private function onSquareMouseDown(e:Event):void
        {
            _square.startDrag();

            stage.addEventListener(MouseEvent.MOUSE_UP, onStageMouseUp);

        }// end function

        private function onStageMouseUp(e:Event):void
        {
            stage.removeEventListener(MouseEvent.MOUSE_UP, onStageMouseUp);
            _square.stopDrag();

            var xml:XML = <dragAndDrop>
                              <x>{_square.x}</x>
                              <y>{_square.y}</y>
                          </dragAndDrop>;

            var file:File = File.desktopDirectory.resolvePath("xml/dragAndDrop.xml");
            var fileStream:FileStream = new FileStream();
            fileStream.open(file, FileMode.WRITE);
            fileStream.writeMultiByte(String(xml), "iso-8859-01");
            fileStream.close();

        }// end function

    }// end class

}// end package

import flash.display.Sprite;

internal class Square extends Sprite
{
    public function Square()
    {
        graphics.beginFill(0xFF0000);
        graphics.drawRect(0, 0, 100, 100);
        graphics.endFill();

    }// end function

}// end class
0 голосов
/ 09 июля 2011

Примеры, приведенные на веб-сайте, относятся к mx 2004. Более актуальный пример можно посмотреть здесь .

...