Android属性动画弹出效果

原创 2017年01月03日 13:56:54

大家都知道补间动画 可以也可以达到这种效果  但是没有焦点  这次使用的是属性动画,变化之后也有焦点

先来一张效果图


public class MainActivity extends AppCompatActivity {
    private ImageView mOne,mTwo, mThree, mFore;
    //判断是否点击过
    private boolean state=false;
    private Handler mHandler = new Handler(Looper.getMainLooper());

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        init();
        setListener();
    }

    private void init() {
        mOne = (ImageView) findViewById(R.id.one);
        mTwo = (ImageView) findViewById(R.id.two);
        mThree = (ImageView) findViewById(R.id.three);
        mFore = (ImageView) findViewById(R.id.fore);
        mWidth = DisplayUtils.getWidthPx();
        mHight = DisplayUtils.getHeightPx();

    }
    private void setListener() {
        mOne.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if (!state) {
                    mOne.setClickable(false);
                    mTwo.animate().xBy(-100).yBy(-100).setDuration(200).start();
                    mThree.animate().xBy(0).yBy(-100).setDuration(400).start();
                    mFore.animate().xBy(100).yBy(-100).setDuration(600).start();
                    mHandler.postDelayed(new Runnable() {
                        @Override
                        public void run() {
                            mOne.setClickable(true);
                            state = true;
                        }
                    },600);

                } else {
                    mOne.setClickable(false);
                    mTwo.animate().xBy(100).yBy(100).setDuration(600).start();
                    mThree.animate().xBy(0).yBy(100).setDuration(400).start();
                    mFore.animate().xBy(-100).yBy(100).setDuration(200).start();
                    mOne.postDelayed(new Runnable() {
                        @Override
                        public void run() {
                            mOne.setClickable(true);
                            state = false;
                        }
                    }, 600);

                }
            }
        });

    }

【Android笔记】淡入淡出、上下弹出动画的

今天想到了自己毕业设计时候做的app,里面主页上面的搜索框用到了一个PopupWindow来实现,我就琢磨这在给他加上一个动画,当时真的是什么都不懂,囫囵吞枣的就拿来用了,现在又大概找了两种动画效果来...

android对话框弹出方式动画

//自定义Dialog class myDialog extends Dialog{ private Window window = null; ...

Android Animation实战之屏幕底部弹出PopupWindow

原文链接(建议跳转):Android Animation实战之屏幕底部弹出PopupWindow 我们仿写一个这种效果的实例吧: 1、我们首先定义一下,弹出窗口的页面布局组件:take_photo_...

Android属性动画应用——菜单以散开的方式弹出

一、前言 Google推出的新方法——android属性动画,让很多大牛和热爱技术的人高兴不已,纷纷发表自己的学习心得、认识以及教程。这里,我是通过在慕课网的相关视频学习中,获得的启发,于是...

Android属性动画完全解析(上),初识属性动画的基本用法

在手机上去实现一些动画效果算是件比较炫酷的事情,因此Android系统在一开始的时候就给我们提供了两种实现动画效果的方式,逐帧动画(frame-by-frame animation)和补间动画(twe...

android开发游记:弹出窗和底部弹出窗的实现和动画效果

安卓自带的弹出窗简直是丑到不能直视,许多应用都是使用自己自定义的弹出窗,这里我总结下弹出窗的实现方法和弹出动画:比如中间渐隐式弹出窗和底部弹出式的弹出窗。先上效果图: 之前看过一篇文章,使用Activ...

自定义dialog和弹出dialog的动画

自定义dialog final Dialog dialog = new Dialog(ChartVisit.this); LayoutInflater inflate...

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

动态添加ImageView控件并在其上实现动画

先看个例子: LinearLayout.LayoutParams lytp = new LinearLayout.LayoutParams(100,100); ImageVi...
  • LLXLQY
  • LLXLQY
  • 2016年08月23日 20:35
  • 2675

Android使用属性动画property animation,实现分散式弹出菜单

Android提供了多种动画类型,有View Animation 、Drawable Animation 、Property Animation 。 View Animation只能支持简单的缩放、...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Android属性动画弹出效果
举报原因:
原因补充:

(最多只允许输入30个字)