Android UI Libs之BrokenView

Android UI Libs之BrokenView


1. 说明


BrokenView让视图产生玻璃破裂的效果。

注意:该库只能在API14以上的设备上运行

2. 配置


在模块的build.gradle上面添加依赖

dependencies {
   compile 'com.zys:brokenview:1.0.3'
 }  

3. 基本使用


触摸一个视图让它慢慢破裂:

this.image = (ImageView) findViewById(R.id.image);
//创建BrokenView的对象
BrokenView brokenView = BrokenView.add2Window(this);
//创建BrokenTouchListener的对象
BrokenTouchListener listener = new BrokenTouchListener.Builder(brokenView).build();
//为image设置触摸事件监听
image.setOnTouchListener(listener);        

程序运行界面:

BrokenTouchListener.Builder中有很多配置参数:

BrokenTouchListener.Builder(brokenView).
    setComplexity(...).          // 设置破裂的复杂度,默认值12
    setBreakDuration(...).       // 设置视图破裂持续的时间,默认值700ms
    setFallDuration(...).        // 设置视图坠落持续的时间,默认值2000ms
    setCircleRiftsRadius(...).   // 设置以触摸点为中心的圆形裂痕半径,默认值是66dp
    setEnableArea().             // 设置可以使指定子视图产生破裂效果
    setEnableArea(...).          // 设置子视图可以产生破裂效果的区域,保证子视图没有设置触摸事件监听
    setPaint(...).               // 设置裂痕的画笔
    build();                  

BrokenView还可以设置回调来监听破裂动画的状态:

        brokenView.setCallback(new BrokenCallback() {
            //开始破裂
            @Override
            public void onStart(View v) {
                super.onStart(v);
            }
            //取消结束破裂
            @Override
            public void onCancelEnd(View v) {
                super.onCancelEnd(v);
            }
            //坠落结束
            @Override
            public void onFallingEnd(View v) {
                super.onFallingEnd(v);
            }
            //坠落中
            @Override
            public void onFalling(View v) {
                super.onFalling(v);
            }
            //重新开始破裂
            @Override
            public void onRestart(View v) {
                super.onRestart(v);
            }
            //取消破裂
            @Override
            public void onCancel(View v) {
                super.onCancel(v);
            }
        });

程序源代码下载,我的github仓库:UILibs

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,273评论 19 139
  • Spring Boot 参考指南 介绍 转载自:https://www.gitbook.com/book/qbgb...
    毛宇鹏阅读 47,005评论 6 342
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 174,659评论 25 709
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,301评论 4 61
  • 上一作:尼禄·克劳狄乌斯·德鲁苏斯·日耳曼尼库斯 点开拜访专题「FGO英灵往事」 齐格弗里德,德国叙事诗...
    口风琴阅读 2,923评论 6 6