Scalpel是由JakeWharton大神开源的一个Android项目,用于分析解剖Android程序的界面布局并展现出3D效果。Scalpel使用非常简单,只要将ScalpelFrameLayout作为根布局即可。
ScalpelFrameLayout scalpelFrameLayout = new ScalpelFrameLayout(this);
View view = LayoutInflater.from(this).inflate(R.layout.sample_activity, null);
scalpelFrameLayout.addView(view);
setContentView(scalpelFrameLayout);
上面这个只是作为根布局使用,对应的它还有一些方法如下:
//是否显示3D布局
scalpelFrameLayout.setLayerInteractionEnabled(true);
//是否显示view的布局
scalpelFrameLayout.setDrawViews(true);
//是否显示view的ID
scalpelFrameLayout.setDrawIds(true);
//设置布局边框的颜色
scalpelFrameLayout.setChromeColor(0xff00ff00);
//设置布局边框的阴影颜色
scalpelFrameLayout.setChromeShadowColor(0xff0000ff);
ScalpelFrameLayout默认是没有打开3D布局的,所以我们需要主动设置setLayerInteractionEnabled为true,才能打开3D布局效果。当打开3D布局效果后,支持3种手势操作。
- 单指控制布局的旋转角度
- 双指垂直方向滑动,缩放布局的大小
- 双指水平方向滑动,缩放布局的间距
下面来看下Scalpel实际使用的效果。
本示例源码下载(注:本文的源码是使用Scalpel的源码,只是将其移植到Eclipse版本上来):
Eclipse版
Android Studio版