首页

源码搜藏网

首页 > 安卓源码 > 功能分类 > 视图效果View Effects >

用最简单的方式来实现 Android 视图扩散切换效果

创建时间:2017-01-16 09:27  

用最简单的方式来实现 Android 视图扩散切换效果
用最简单的方式来实现 Android 视图扩散切换效果
暂无演示 立即下载

Android 视图扩散切换控制器

More simple to create View Translation Animation.

API compatible with Android 4.0+

Preview


ViewSpreadTranslationController ViewSpreadTranslationController ViewSpreadTranslationController ViewSpreadTranslationController


Usage

java

 helper = new BaseViewHelper
                .Builder(SecondActivity.this)
                //.setEndView()//如果是两个切换的视图  这里设定最终显示的视图
                .setTranslationView(v)//设置过渡视图
                .isFullWindow(true)//是否全屏显示
                .isShowTransition(true)//是否显示过渡动画
                .setDimColor(Color.WHITE)//遮罩颜色
                .setDimAlpha(200)//遮罩透明度
                //.setTranslationX(0)//x 轴平移
                //.setRotation(360)//旋转
                //.setScaleX(0)//x 轴缩放
                //.setScaleY(0)//y 轴缩放
                //.setTranslationY(0)//y 轴平移
                //.setDuration(800)//过渡时长
                //.setInterpolator(new AccelerateDecelerateInterpolator())//设置插值器
                //设置监听
//                .setOnAnimationListener(new BaseViewHelper.OnAnimationListener() {
//                    @Override
//                    public void onAnimationStartIn() {
//                        Log.e("TAG","onAnimationStartIn");
//                    }
//
//                    @Override
//                    public void onAnimationEndIn() {
//                        Log.e("TAG","onAnimationEndIn");
//                    }
//
//                    @Override
//                    public void onAnimationStartOut() {
//                        Log.e("TAG","onAnimationStartOut");
//                    }
//
//                    @Override
//                    public void onAnimationEndOut() {
//                        Log.e("TAG","onAnimationEndOut");
//                    }
//                })
                .create();//开始动画

More use


A(Activity) -->B(Activity)

A(Activity):

 new BaseViewHelper
                .Builder(MainActivity.this, view)
                .startActivity(intent);

B(Activity):

helper = new BaseViewHelper
                .Builder(SecondActivity.this)
                .isFullWindow(true)//是否全屏显示
                .isShowTransition(true)//是否显示过渡动画
                .setDimColor(Color.WHITE)//遮罩颜色
                .setDimAlpha(200)//遮罩透明度
                .create();//开始动画

    @Override
    public void onBackPressed() {
        if (helper!=null && helper.isShowing()){
            helper.backActivity(this);
        }else {
            super.onBackPressed();
        }
    }

A(View) -->B(View)

Activity:

            View v = View.inflate(this,R.layout.layout_second,null);
            //显示在当前页面跳转
            helper = new BaseViewHelper.Builder(this,view)
                    .setEndView(v)
                    .create();


    @Override
    public void onBackPressed() {
        if (helper!=null && helper.isShowing()){
            helper.back();
        }else {
            super.onBackPressed();
        }
    }
上一篇:FlycoPageIndicator实现页面指示器动画切换效果
下一篇:轮盘样式的 Fragment 选择菜单,可转动轮盘切换 Fragment

相关内容

热门推荐