StretchScrollView provides functionality to enlarge title image and hide overlays when scrolling down. When scrolling up it allows to animate background of navigation bar.
To run the example project, clone the repo, and run
pod install from the Example directory first.
If you are setting
StretchScrollView class in storyboard assure module field is also
Please check official guide
github "APUtils/StretchScrollView" ~> 5.0
Then add both
ViewState frameworks to your project. Remove
APExtensionsViewState dependency if you previously had it.
StretchScrollView is available through CocoaPods. To install it, simply add the following line to your Podfile:
pod 'StretchScrollView', '~> 5.0'
StretchScrollView class to your UIScrollView in storyboard, assure module field is also
Set needed outlets and options.
Usually content mode
Aspect Fill fits well for
Properly setup constraints for
stretchedView. There are two resize modes available: by top and height constraints and by top and sides constraints.
Example constraints setups:
For second setup if scroll view is enlarged it'll be automatically zoomed at center.
Also works when stretched view is inside
UIStackView and have height constraint.
/// StretchScrollView will manage navigation bar transparency by itself. /// You could disable this option to manage it by yourself or to disable navigation bar animations. @IBInspectable var manageNavigationBarTransparency: Bool = true /// In case of transparent navigation bar you may specify background color that will appear when you scroll up. @IBInspectable var navigationBackgroundColor: UIColor = .clear
You are done! See example project for more details.
Any contribution is more than welcome! You can contribute through pull requests and issues on GitHub.
Anton Plebanovich, [email protected]
StretchScrollView is available under the MIT license. See the LICENSE file for more info.