【FA】启动页动画

  • 内容
  • 相关

2020-04-18

程序启动事件

--启动动画
import 'android.webkit.WebView'
webView.addJavascriptInterface({},'JsInterface')

import "android.app.*"
import "android.os.*"
import "android.widget.*"
import "android.view.*"
import "android.graphics.Typeface"
import "android.view.animation.AccelerateInterpolator"
import "android.transition.ArcMotion"
import "android.animation.AnimatorSet"
import "android.animation.Animator$AnimatorListener"
import "android.graphics.drawable.GradientDrawable"

began={
  RelativeLayout;
  layout_height="fill";
  layout_width="fill";
  id="began_b";
  {
    LinearLayout;
    orientation="vertical";
    layout_height="fill";
    layout_width="fill";
    {
      RelativeLayout;
      layout_weight="1";
      layout_height="-1";
      background="#E53A40";
      id="top";
      layout_width="-1";
    };
    {
      RelativeLayout;
      layout_weight="1";
      layout_height="-1";
      background="#30A9DE";
      id="bottom";
      layout_width="-1";
      {
        TextView;
        layout_centerHorizontal="true";
        textColor="#ffffff";
        id="t1";
        textSize="28sp";
        layout_marginTop="50dp";
      };
      {
        TextView;
        layout_centerHorizontal="true";
        textColor="#ffffff";
        id="t2";
        textSize="14sp";
        layout_marginTop="100dp";
      };
    };
  };
  {
    ImageView;
    scaleType="fitCenter";
    layout_height="65dp";
    id="center";
    layout_width="65dp";
    layout_centerInParent="true";
    src="https://www.52linglong.com/favicon.ico";
  };
};

drawerLayout.getParent().addView(loadlayout(began))

function CircleButton(view,InsideColor,radiu)
  drawable = GradientDrawable() 
  drawable.setShape(GradientDrawable.RECTANGLE) 
  drawable.setColor(InsideColor)
  drawable.setCornerRadii({radiu,radiu,radiu,radiu,radiu,radiu,radiu,radiu});
  view.setBackgroundDrawable(drawable)
end
--控件圆角 (控件id,颜色,角度)
CircleButton(center,0xFF218380,360)
--第一行文字
t1.setText("玲珑博客")
ats = AnimatorSet()
--文字动画(参考lua手册)
scx=ObjectAnimator().ofFloat(t1,"scaleX",{0,1})
scy=ObjectAnimator().ofFloat(t1,"scaleY",{0,1})
tr=ObjectAnimator().ofFloat(t1, "Y",{1200,t1.getY()+120})
alpha = ObjectAnimator().ofFloat(t1, "alpha", {0,1})
--800是动画时间,毫秒
ats.setDuration(500)
ats.setInterpolator(AccelerateInterpolator())
ats.play(scx).with(scy).with(tr).with(alpha)
ats.start()

ats.addListener(AnimatorListener{
  onAnimationEnd=function(animation)
    --第二行文字
    t2.setText("应用正在加载,请稍等")
    ats2 = AnimatorSet()
    scx2=ObjectAnimator().ofFloat(t2,"scaleX",{0,1})
    scy2=ObjectAnimator().ofFloat(t2,"scaleY",{0,1})
    tr2=ObjectAnimator().ofFloat(t2, "Y",{1200,t1.getY()+140})
    alpha2 = ObjectAnimator().ofFloat(t2, "alpha", {0,1})
    --动画时间
    ats2.setDuration(500)
    ats2.setInterpolator(AccelerateInterpolator())
    ats2.play(scx2).with(scy2).with(tr2).with(alpha2)
    ats2.start()

    ats2.addListener(AnimatorListener{
      onAnimationEnd=function(animation)
        phone=center
        set = AnimatorSet()
        anim = ObjectAnimator .ofFloat(phone, "rotation",{360,0})
        anim3 = ObjectAnimator .ofFloat(phone, "rotationX",{360,0})
        anim.setDuration(500)
        anim3.setDuration(500)
        set.play(anim).before(anim3)
        set.start()


        set.addListener(AnimatorListener{
          onAnimationEnd=function(animation)
            set2 = AnimatorSet()
            --结束动画 中间图标渐隐 上下拉开
            tr3=ObjectAnimator().ofFloat(top, "Y",{top.getY(),-2000})
            tr4=ObjectAnimator().ofFloat(bottom, "Y",{bottom.getY(),5000})
            al=ObjectAnimator().ofFloat(center, "alpha", {1,0})
            set2.setDuration(500)
            set2.setInterpolator(AccelerateInterpolator())
            set2.play(tr3).with(tr4).with(al)
            set2.start()

            set2.addListener(AnimatorListener{
              onAnimationEnd=function(animation)
                --动画结束执行代
                task(500,function()
                  --延迟之后执行的事件
                end)
              end,
            });
          end,
        });
      end,
    });
  end,
})





  文件名稱:启动页动画

  更新時間:网友分享

  下載声明:本资源来自互联网,任何人都不得用于商业用途。

立即下載

下载链接

极速下载网盘下载

本资源来自互联网,任何人都不得用于商业用途。

本文标签:

本文标题:【FA】启动页动画

本文链接:https://www.52linglong.com/Android/FAstartpageanimation.html

版权声明:若无特殊注明,皆为《Fusion》原创版权,转载请保留文章出处。

发表评论

电子邮件地址不会被公开。 必填项已用*标注