How do I get the Open Dialog on Android ICS 4.0?


hi,

 

i using flash cs6, android setup, 3.0 as

i have galaxy tab, ics 4.0 device

 

i can read & write text file fine on pc.

 

but, when upload galaxy tab 2 (7")....

 

1) generic dialog displays path (/mnt/sdcard/) ... , displays "audio, image, video" options. says "download" diaglog title.

 

i can save file fine.

 

2) when try open, displays "audio, image, video" options not allow me open file saved.

 

so, how dialog allows me browse file saved??

 

screenshot_noopendialog.jpg

 

here code...

 

package com.adobe.examples

{

          import flash.display.sprite;

          import flash.filesystem.*;

          import flash.events.*;

          import flash.system.capabilities;

          import flash.text.textformat;

 

          import fl.controls.button;

          import fl.controls.textarea;

 

          //import flash.net.filefilter;

 

          public class texteditorflash extends sprite

          {

                    //fwhilton added

                    //var filetoopen:file = new file();

                    //var txtfilter:filefilter = new filefilter("text *.txt", "*.txt");

 

 

                    // currentfile opened (and saved) application

                    private var currentfile:file;

 

                    // filestream object used reading , writing currentfile

                    private var stream:filestream = new filestream();

 

                     // default directory

                    private var defaultdirectory:file;

 

                    // whether text data has changed (and should saved)

                    public var datachanged:boolean = false;

 

 

                    public function texteditorflash()

                    {

                              trace("texteditor()");

 

                              defaultdirectory = file.documentsdirectory;

                              //fwhilton added

                              //defaultdirectory = file.documentsdirectory.resolvepath("testapps/");

 

                              newbtn.addeventlistener(mouseevent.click,newfile);

                              openbtn.addeventlistener(mouseevent.click,openfile);

                              savebtn.addeventlistener(mouseevent.click,savefile);

                              saveasbtn.addeventlistener(mouseevent.click,saveas);

 

                              var tf:textformat = new textformat();

                              tf.font = "courier new";

                              tf.size = "16";

                              maintextfield.setstyle("textformat",tf);

                    }

 

                    /**

                    * called when user clicks open button. opens file chooser dialog box, in

                    * user selects currentfile.

                    */

                    private function openfile(event:mouseevent):void

                    {

                              var filechooser:file;

                              if (currentfile)

                              {

                                        filechooser = currentfile;

                              }

                              else

                              {

                                        filechooser = defaultdirectory;

                              }

                              filechooser.browseforopen("open");

                              filechooser.addeventlistener(event.select, fileopenselected);

                    }

                    /**

                    * called when user selects currentfile in fileopenpanel control. method passes

                    * file object pointing selected currentfile, , opens filestream object in read mode (with filemode

                    * setting of read), , modify's title of application window based on filename.

                    */

                    private function fileopenselected(event:event):void

                    {

                              currentfile = event.target file;

                              stream = new filestream();

                              stream.openasync(currentfile, filemode.read);

                              stream.addeventlistener(event.complete, filereadhandler);

                              stream.addeventlistener(ioerrorevent.io_error, readioerrorhandler);

                              datachanged = false;

                              currentfile.removeeventlistener(event.select, fileopenselected);

                    }

                    /**

                    * called when stream object has finished reading data currentfile (in openfile()

                    * method). method reads data utf data, converts system-specific line ending characters

                    * in data "\n" character, , displays data in maintextfield text component.

                    */

                    private function filereadhandler(event:event):void

                    {

                              var str:string = stream.readutfbytes(stream.bytesavailable);

                              stream.close();

                              var lineendpattern:regexp = new regexp(file.lineending, "g");

                              str = str.replace(lineendpattern, "\n");

                              maintextfield.text = str;

                              stream.close();

                    }

                    /**

                    * called when user clicks "save" button. method sets stream object point to

                    * currentfile specified currentfile object, save access. method converts "\r" , "\n" characters

                    * in maintextfield.text data system-specific line ending character, , writes data currentfile.

                    */

                    private function savefile(event:mouseevent = null):void

                    {

                              if (currentfile) {

                                        if (stream != null)

                                        {

                                                  stream.close();

                                        }

                                        stream = new filestream();

                                        stream.openasync(currentfile, filemode.write);

                                        stream.addeventlistener(ioerrorevent.io_error, writeioerrorhandler);

                                        var str:string = maintextfield.text;

                                        str = str.replace(/\r/g, "\n");

                                        str = str.replace(/\n/g, file.lineending);

                                        stream.writeutfbytes(str);

                                        stream.close();

                                        datachanged = false;

                              }

                              else

                              {

                                        saveas();

                              }

                    }

                    /**

                    * called when user clicks "save as" button. opens save dialog box, in

                    * user selects currentfile path. see filesavepanel.mxml currentfile.

                    */

                    private function saveas(event:mouseevent = null):void

                    {

                              var filechooser:file;

                              if (currentfile)

                              {

                                        filechooser = currentfile;

                              }

                              else

                              {

                                        filechooser = defaultdirectory;

                              }

                              filechooser.browseforsave("save as");

                              filechooser.addeventlistener(event.select, saveasfileselected);

                    }

                    /**

                    * called when user selects file path in save dialog box. method passes selected

                    * currentfile file object , calls savefile() method, saves currentfile.

                    */

                    private function saveasfileselected(event:event):void

                    {

                              currentfile = event.target file;

                              savefile();

                              datachanged = false;

                              currentfile.removeeventlistener(event.select, saveasfileselected);

                    }

                    /**

                    * called when user clicks "new" button. initializes state, undefined file object , a

                    * blank text entry field.

                    */

                    private function newfile(event:mouseevent):void

                    {

                              currentfile = undefined;

                              datachanged = false;

                              maintextfield.text = "";

                    }

                    /**

                    * handles i/o errors may come when opening currentfile.

                    */

                    private function readioerrorhandler(event:event):void

                    {

                              trace("the specified currentfile cannot opened.");

                    }

                    /**

                    * handles i/o errors may come when writing currentfile.

                    */

                    private function writeioerrorhandler(event:event):void

                    {

                              trace("the specified currentfile cannot saved.");

                    }

          }

}

hi,

 

does have idea on how can native open file dialog?

 

 



More discussions in AIR Development


adobe

Comments