Android UI Libs之BrokenView
1. 說明
BrokenView讓視圖產(chǎn)生玻璃破裂的效果。

注意:該庫只能在API14以上的設備上運行
2. 配置
在模塊的build.gradle上面添加依賴
dependencies {
compile 'com.zys:brokenview:1.0.3'
}
3. 基本使用
觸摸一個視圖讓它慢慢破裂:
this.image = (ImageView) findViewById(R.id.image);
//創(chuàng)建BrokenView的對象
BrokenView brokenView = BrokenView.add2Window(this);
//創(chuàng)建BrokenTouchListener的對象
BrokenTouchListener listener = new BrokenTouchListener.Builder(brokenView).build();
//為image設置觸摸事件監(jiān)聽
image.setOnTouchListener(listener);
程序運行界面:
BrokenTouchListener.Builder中有很多配置參數(shù):
BrokenTouchListener.Builder(brokenView).
setComplexity(...). // 設置破裂的復雜度,默認值12
setBreakDuration(...). // 設置視圖破裂持續(xù)的時間,默認值700ms
setFallDuration(...). // 設置視圖墜落持續(xù)的時間,默認值2000ms
setCircleRiftsRadius(...). // 設置以觸摸點為中心的圓形裂痕半徑,默認值是66dp
setEnableArea(). // 設置可以使指定子視圖產(chǎn)生破裂效果
setEnableArea(...). // 設置子視圖可以產(chǎn)生破裂效果的區(qū)域,保證子視圖沒有設置觸摸事件監(jiān)聽
setPaint(...). // 設置裂痕的畫筆
build();
BrokenView還可以設置回調(diào)來監(jiān)聽破裂動畫的狀態(tài):
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