Zoomy是一款简单易用的缩放Android图书馆
安装
ZoomCenter在JCenter中可用,因此您只需将其添加为依赖关系即可
compile 'com.ablanco.zoomy:zoomy:{latest version}'
其中{latest version}
对应于JCenter中的已发布版本
##用法
要开始使用Zoomy,只需注册您想要可缩放的View
Zoomy.Builder builder = new Zoomy.Builder(this).target(mZoomableView);
builder.register();
就这样。现在您的意见可以缩小!
##定制
Zoomy允许在其行为中进行一些自定义:
- 使用ZoomyConfig更改默认配置标志
ZoomyConfig config = new ZoomyConfig();
config.setZoomAnimationEnabled(false); //Enables zoom out animation when view is released (true by default)
config.setImmersiveModeEnabled(false); //Enables entering in inmersive mode when zooming a view (true by default)
- 现在将其设置为所有Zoomy注册视图中的默认配置
Zoomy.setDefaultConfig(config);
Zoomy构建器还允许一些定制
- 构建Zoomy注册时也可以设置Zoomy配置标志。该标志将始终覆盖默认的ZoomyConfig标志。
Zoomy.Builder builder = new Zoomy.Builder(this)
.target(mZoomableView)
.enableImmersiveMode(false)
.animateZooming(false);
- 您可以添加回调来监听特定事件。因为Zoomy通过将View.OnTouchListener附加到注册的View,所以View.OnClickListener不能与Zoomy一起设置,因此提供了TapListener以确保View仍然可以监听点击事件。如果您对缩放事件感兴趣,也会提供ZoomListener。
Zoomy.Builder builder = new Zoomy.Builder(this)
.target(mZoomableView)
.tapListener(new TapListener() {
@Override
public void onTap(View v) {
//View tapped, do stuff
}
})
.zoomListener(new ZoomListener() {
@Override
public void onViewStartedZooming(View view) {
//View started zooming
}
@Override
public void onViewEndedZooming(View view) {
//View ended zooming
}
});
- 当动画结束缩放事件时,可以更改使用的插值器。
Zoomy.Builder builder = new Zoomy.Builder(this)
.target(mZoomableView)
.interpolator(new OvershootInterpolator());