VBPiledView
  • October 6, 2023

simple but highly effective animation and interactivity!

By v-braun – viktor-braun.de.

Preview


Description


Very simple and beautiful stacked UIView to use as a replacement for an UITableView, UIImageView or as a menu.

Inspired by this post from ULTRALINX:

Installation


CocoaPods

VBPiledView is available on CocoaPods. Just add the following to your project Podfile:

pod ‘VBPiledView’, ‘~> 1.4’

Or from GitHub:

pod ‘VBPiledView’, :git => ‘https://github.com/v-braun/VBPiledView.git’

Manually

  1. Download and drop VBPiledView.swift in your project.
  2. Congratulations!

Usage


See the Example Project.

Here is a sample ViewController that use the VBPiledView:

import VBPiledView
class ViewController: UIViewController, VBPiledViewDataSource {

@IBOutlet var piledView: VBPiledView!

private var _subViews = [UIView]()

override func viewDidLoad() {
super.viewDidLoad()

_subViews.append(UIImageView(image: UIImage(named: “ant.jpg”)))
_subViews.append(UIImageView(image: UIImage(named: “bigban.jpg”)))
_subViews.append(UIImageView(image: UIImage(named: “leopard.jpg”)))
_subViews.append(UIImageView(image: UIImage(named: “libertystate.jpg”)))
_subViews.append(UIImageView(image: UIImage(named: “Moonrise.jpg”)))
_subViews.append(UIImageView(image: UIImage(named: “photographer.jpg”)))

for v in _subViews{
v.contentMode = UIViewContentMode.ScaleAspectFill
v.clipsToBounds = true
v.backgroundColor = UIColor.grayColor()
}

piledView.dataSource = self
}

func piledView(numberOfItemsForPiledView: VBPiledView) -> Int {
return _subViews.count
}

func piledView(viewForPiledView: VBPiledView, itemAtIndex index: Int) -> UIView {
return _subViews[index]
}
}

Configuration


The sizes of an expanded item and of all collapsed items can be configured relative to the size of the VBPiledView.

self.piledView.expandedContentHeightInPercent = 70 // expanded content height -> 70% of screen
self.piledView.collapsedContentHeightInPercent = 15 // collapsed content heigt of single item -> 15% of screen

Related Projects


GitHub


View Github

#cocoapods #collectionview #imagegallery #ios #swift #uicollectionview #uiimageview #uitableview
YOU MIGHT ALSO LIKE...
SwiftUI Charts

Build custom charts with SwiftUI Styles

SwiftUICharts

A simple line and bar charting library that support accessibility written using SwiftUI.

Swipeable cards

Swipeable Cards with SwiftUI

RGStack

This UI attempts to capture the Quibi Card Stack and the associated User Interaction.

🃏 CardStack

A easy-to-use SwiftUI view for Tinder like cards on iOS, macOS & watchOS.