ZoomLayout

2D zoom and pan behavior for View hierarchies, images, video streams, and much more, written in Kotlin for Android.

APACHE-2.0 License

Stars
1K

Bot releases are hidden (Show)

ZoomLayout - v1.9.0 Latest Release

Published by natario1 almost 3 years ago

See changelog.

ZoomLayout - v1.8.0

Published by markusressel over 4 years ago

See changelog.

ZoomLayout - v1.7.1

Published by natario1 over 4 years ago

See changelog.

ZoomLayout - v1.7.0

Published by natario1 about 5 years ago

See CHANGELOG.

ZoomLayout - v1.6.1

Published by markusressel over 5 years ago

See CHANGELOG.

ZoomLayout - v1.6.0

Published by natario1 over 5 years ago

See CHANGELOG.

ZoomLayout - v1.5.1

Published by natario1 over 5 years ago

See CHANGELOG.

ZoomLayout - v1.5.0

Published by natario1 over 5 years ago

See CHANGELOG.

ZoomLayout - v1.4.0

Published by natario1 almost 6 years ago

  • Fixes a bug with scrollbars thanks to @markusressel (#35)
  • Fixes the library manifest thanks to @bkhall (#49)
  • Fixes panning after double taps thanks to @Yundin (#56)
  • Fixes canvas transformations for Android <= 6 thanks to @DennisBlock (#62)
  • Updated dependencies (#59)
  • Moved to AndroidX (#59)
  • More nullability annotations to support Kotlin (#59)
  • Added the ZoomEngine.SimpleListener class: it extends ZoomEngine.Listener, but instead of a matrix, provides the zoom and pan values. (#59)
  • Now you can add multiple listeners to ZoomEngine using addListener instead of passing one to the constructor. Old constructor is deprecated. (#59)
  • ZoomEngine.setContentSize(RectF) is deprecated. Please use ZoomEngine.setContentSize(float, float). You can optionally pass a boolean to apply the engine transformation. (#59)
  • ZoomEngine.setContainerSize(float, float) lets you override the view container size. Normally you don't need this because the container size is determined using a layout listener. But sometimes you might. (#59)
  • Added setAnimationDuration API to set the duration of pan/zoom animations (#59)
  • Added friction to overscrolls, which gives a more realistic response. (This is still improvable in many ways.) (#59)
  • Fix an annoying issue when overscrolling, sometimes flings would start in the opposite direction. (#59)
  • Other minor improvements.
ZoomLayout - v1.3.0

Published by natario1 over 6 years ago

  • Scrollbar support. You can now use all android scrollbar APIs (notably, android:scrollbars) to enable scrollbars in ZoomLayout and ZoomImageView. Thanks to @markusressel (#30)
  • Selective control with app:zoomEnabled, app:verticalPanEnabled and app:horizontalPanEnabled and related Java APIs, thanks to @markusressel (#31)
ZoomLayout - v1.2.0

Published by natario1 over 6 years ago

  • Introduced zoomIn() and zoomOut() (#27)
  • Expose all APIs in ZoomLayout and ZoomImageView, no more need to use getEngine() (#27)
  • Added setTransformation API (#28)
  • Added app:transformation and app:transformationGravity XML attributes (#28)

Both things will control the default transformation that is applied when the content is laid out for the first time. The default value for transformation is TRANSFORMATION_CENTER_INSIDE and the default gravity is Gravity.CENTER.

  • Support for TRANSFORMATION_CENTER_CROP (#28)
  • Support for TRANSFORMATION_NONE (#28)
ZoomLayout - v1.1.1

Published by natario1 over 6 years ago

Fixed a bug with flings that caused the engine to hang (#18).

ZoomLayout - v1.1.0

Published by natario1 about 7 years ago

  • Fix a lot of zoom/focus issues that were evident with large content (#9)
  • Deprecate overScrollable in favor of overScrollHorizontal and overScrollVertical (#8)
ZoomLayout - v1.0.3

Published by natario1 about 7 years ago

Fixed some serious bugs (and improved support) for the case when hasClickableChildren is set to false, or is changed during layout.

ZoomLayout - v1.0.2

Published by natario1 about 7 years ago

This release fixes a lot of bugs and flickers that were happening.

  • add XML attributes for minZoomType and maxZoomType (#6)
  • scaling is not smooth (#6, #7)
  • pan APIs are now exact by using preTranslate (#7)
  • zoom constraints are respected at startup (#7)
ZoomLayout - v1.0.1

Published by natario1 about 7 years ago

This release improves stability and adds new features.

  • moveTo() api to animate both zoom and pan concurrently
  • new setMaxZoom() and setMinZoom() APIs
  • neat initialization even when the view size or the content size change on the run
  • ZoomLogger to read or shut down logs
ZoomLayout - v1.0.0

Published by natario1 about 7 years ago

First release.

Package Rankings
Top 6.7% on Proxy.golang.org
Top 15.85% on Repo1.maven.org
Badges
Extracted from project README
Build Status Release Issues
Related Projects