手机带时间缓动解屏过程

//给大家分享一下手机解屏的过程制作
package {
import flash.display.MovieClip;
import flash.events.Event;
import flash.events.MouseEvent;
public class JieSuo extends MovieClip {
private var xq:String;
private var xs:String;
private var zuobiao:Number=mouseY;//定义一个变量判断jieping的坐标,间接判断鼠标的坐标
public function JieSuo()
{
init();
initFuZhi();
initShiJian();
}
private function init():void
{
jieping.mask = jiePingMask;//jieping的遮罩,实现不让元件超出手机屏幕
jieping.xiaTuo.visible=false;//点击解锁后提示的文字
jieping.jieSuo2.alpha = 0;
jieping.jieSuo1.alpha = 0.6;
shijian.am_pm_txt.mouseEnabled = false;//时间的文本不可选
shijian.riQi_txt.mouseEnabled = false;
shijian.shiJian_txt.mouseEnabled = false;
}
private function initFuZhi():void
{
jieping.min1.stop();//开始时让提示解锁的小动画停止播放
jieping.min2.stop();
shijian.mouseEnabled=false;//不接收鼠标事件
jieping.buttonMode=true;//光标变为手型
}
private function initShiJian():void
{
stage.addEventListener(Event.ENTER_FRAME,onEnter_FrameHandler);
jieping.addEventListener(MouseEvent.MOUSE_DOWN,onjiepingDoenHandler);
jieping.addEventListener(MouseEvent.MOUSE_UP,onjiepingUpHandler);
}
private function onjiepingDoenHandler(e:MouseEvent):void
{
shijian.visible=false;
jieping.xiaTuo.visible=true;
while(jieping.jieSuo2.alpha < 0.7)//按下时jieSuo2逐渐显现
{
jieping.jieSuo2.alpha += 0.004;
}
//if(zuobiao<=23)
// {
// trace("sfsdgf");
// while(jieping.jieSuo2.alpha > 0)
// {
// jieping.jieSuo2.alpha -= 0.004;
// }
// }
jieping.min1.gotoAndPlay(1);//当鼠标按下时提示的小动画开始播放
jieping.min2.gotoAndPlay(1);
stage.addEventListener(MouseEvent.MOUSE_MOVE,onMoveHandler);//鼠标移动
}
private function onjiepingUpHandler(e:MouseEvent):void
{
shijian.visible=true;
jieping.xiaTuo.visible=false;
jieping.min1.gotoAndStop(1);//鼠标抬起时让提示解锁的小动画停止播放
jieping.min2.gotoAndStop(1);
stage.removeEventListener(MouseEvent.MOUSE_MOVE,onMoveHandler);//抬起时移除移动事件
if(zuobiao<230 && zuobiao>83.75)//鼠标抬起前如果jieping未移动到下面的指定位置坐标复原
{
jieping.y=83.75;
shijian.y=jieping.y-25;//让时间文本的位置与jieping的位置同步
}
}
private function onMoveHandler(e:MouseEvent):void
{
zuobiao=mouseY;
if(zuobiao>83.75 && zuobiao<373)//在此坐标之间jieping、和shijian元件跟随鼠标缓动;
{
jieping.y+=(mouseY-jieping.y)/10;
shijian.y=jieping.y-25;//让时间文本的位置与jieping的位置同步
}
if(zuobiao>205)//如果移出 手机屏jieping、shijian都不可见,则解屏成功
{
jieping.visible=false;
shijian.visible=false;
}
if(zuobiao<=23)//如果鼠标按下之后如果鼠标移到了jieping的上面则对解屏的操作复原
{
while(jieping.jieSuo2.alpha > 0)
{
jieping.jieSuo2.alpha -= 0.004;
}
}
}
private function onEnter_FrameHandler(e:Event):void
{
var date:Date = new Date ;
if (date.day == 1)//把周几的小写数字转换成大写
{
xq = "一";
}
else if (date.day==2)
{
xq = "二";
}
else if (date.day==3)
{
xq = "三";
}
else if (date.day==4)
{
xq = "四";
}
else if (date.day==5)
{
xq = "五";
}
else if (date.day==6)
{
xq = "六";
}
else if (date.day==0)
{
xq = "日";
}
shijian.riQi_txt.text = "周" + xq + " " + String(date.month + 1) + "月" + String(date.date) + "日 " + String(date.fullYear) + "年";
if (date.hours >= 0 && date.hours <= 12)//0-12小时输出的是上午
{
shijian.am_pm_txt.text = "上午";
if (date.hours<10)//判断小时的十位数是否有数,如果没有则在十位上加零
{
xs = "0" + String(date.hours);
}
else
{
xs = String(date.hours);
}
if (date.minutes < 10)//判断分钟的十位数是否有数,如果没有则在十位上加零
{
shijian.shiJian_txt.text = xs + ":0" + String(date.minutes);
}
else
{
shijian.shiJian_txt.text = xs + ":" + String(date.minutes);
}
}
else//12-24输出的是下午
{
shijian.am_pm_txt.text = "下午";
if ((date.hours-12)<10)//判断小时的十位数是否有数,如果没有则在十位上加零
{
xs = "0" + String(date.hours - 12);
}
else
{
xs = String(date.hours - 12);
}
if (date.minutes < 10)//判断分钟的十位数是否有数,如果没有则在十位上加零
{
shijian.shiJian_txt.text = xs + ":0" + String(date.minutes);
}
else
{
shijian.shiJian_txt.text = xs + ":" + String(date.minutes);
}
}
}
}
}
浙公网安备 33010602011771号