资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,FlexShareObject,shareObject 是共享对象,就可以在客户端存储数据了,就像cookies一样。 位于.SharedObject包中。,1,定义,var,ss:SharedObject=SharedObject.getLocal(,“userdata”,);,其中如果,userdata,存在就会直接使用,如果不存在就创建一个名字叫,userdata,的对象。读写,shareObject,使用,data,属性。将数据写到,Disk,用,flush,()方法。,2,可以使用静态的,SharedObject.getLocal(),或,SharedObject.getRemote(),方法来创建新,的共享对象实例。,getLocal(),方法尝试加载仅对当前客户端可用的本地永久共享对象,而,getRemote(),方法则尝试加载可借助服务器(例如,Flash Media Server,)跨多个客户端共享,的远程共享对象。如果本地或远程共享对象不存在,则,getLocal(),和,getRemote(),方法将,创建一个新的,SharedObject,实例。,下面的代码尝试加载名为,test,的本地共享对象。如果此共享对象不存在,将新建一个具有,此名称的共享对象。,var so:SharedObject = SharedObject.getLocal(test);,trace(SharedObject is + so.size + bytes);,。,3,如果找不到名为,test,的共享对象,则新建一个,0,字节大小的共享对象。如果已经存在该共享,对象,则返回其当前大小 (以字节为单位),如果已经存在名为,test,的共享对象和参数,now,,则会覆盖现有值。您可以使用,SharedObject.size,属性来确定共享对象是否已存在,,4,显示共享对象的内容,值存储在共享对象中的,data,属性中。可以使用,for.in,循环来循环访问共享对象实例中的,每个值,如以下示例所示:,var so:SharedObject = SharedObject.getLocal(test);,so.data.hello = world;,so.data.foo = bar;,so.data.timezone = new Date().timezoneOffset;,for (var i:String in so.data),trace(i + :t + so.datai);,5,示例,输入信息后点击submit按钮将信息保存在shareObject,在点击readme就会显示信息。,6,示例代码,public,function,ClickMe():,void,var,y:uint = 123;,var,u:User =,new,User();,var,aa:SharedObject =SharedObject.getLocal(,userdata,);,er=name:uname.text,pass:pass.text;,function,readd(),area.visible=,true,;,var,a:SharedObject =SharedObject.getLocal(,userdata,);,if,(a!=,null,),area.text=,“,用户名,”,+ +,“,密码,”,+er.pass;/,其中,area,是控件,TextArea,的,id,else,mx.controls.Alert.show(,shareobject is null,);,7,
展开阅读全文