All Projects → eliakorkmaz → Hola

eliakorkmaz / Hola

Licence: MIT license
Light-weight Onboard/Walkthrough UIView/UIImage representer ⏪ & ⏩ ⏫ & ⏬

Programming Languages

swift
15916 projects

Projects that are alternatives of or similar to Hola

Closures
Swifty closures for UIKit and Foundation
Stars: ✭ 1,720 (+4200%)
Mutual labels:  uiview, uiscrollview
Gskstretchyheaderview
A generic stretchy header for UITableView and UICollectionView
Stars: ✭ 1,624 (+3960%)
Mutual labels:  uiview, uiscrollview
JustUiKit
iOS UI Kit With Android-Style Tools. JustUiKit contains JustLinearLayout, JustFrameLayout and so on. It is designed to make Android developers build iOS UI easily. Also for iOS developers, it provides a new way to build UI.
Stars: ✭ 35 (-12.5%)
Mutual labels:  uiview
NetworkImage
Asynchronous image loading in SwiftUI
Stars: ✭ 39 (-2.5%)
Mutual labels:  uiimage
NotchToolkit
Use the iPhone X notch in creative ways 👩‍🎨👨‍🎨.
Stars: ✭ 55 (+37.5%)
Mutual labels:  uiview
GoneVisible
GoneVisible is a UIView extension that uses AutoLayout to add "gone" state like Android.
Stars: ✭ 27 (-32.5%)
Mutual labels:  uiview
uiimage-additions
A collection of miscellaneous utility methods for UIImage for memory-efficient image transformations.
Stars: ✭ 21 (-47.5%)
Mutual labels:  uiimage
UIImageColorRatio
A tool to calculate the color ratio of UIImage in iOS.
Stars: ✭ 34 (-15%)
Mutual labels:  uiimage
ISVImageScrollView
Image preview component with zoom, scroll and rotation support
Stars: ✭ 28 (-30%)
Mutual labels:  uiscrollview
BlurKit
A lightweight library that can easily blur the view.
Stars: ✭ 17 (-57.5%)
Mutual labels:  uiview
OTResizableView
OTResizableView is a UIView library that can be resized with fingers.
Stars: ✭ 47 (+17.5%)
Mutual labels:  uiview
2DUICollectionViewSwift
A simple and elegant 2Dimensional UICollectionView which is most commonly used in ecommerce apps, music streaming apps etc. Easily customisable as per your requirements as it is designed keeping the superset requirement in mind. Developed in latest Swift syntax.
Stars: ✭ 28 (-30%)
Mutual labels:  uiscrollview
Sequents
A simple continuous animation library for iOS UI.
Stars: ✭ 31 (-22.5%)
Mutual labels:  uiview
PREBorderView
A very simple Objective-C UIView category for specifying single-sided borders.
Stars: ✭ 18 (-55%)
Mutual labels:  uiview
SKArchCutter
SKArchCutter是一个可自选切割角的圆角切割工具,同时支持UIView、UIImageView、UIButton和UILabel的单角切圆/选角拱形切圆/全角切圆,并且避免了UIImageView使用系统圆角所导致的离屏渲染的问题,以及确保layer对象的masksToBounds属性始终为NO,从而使得项目中大量使用圆角时的性能得到很大程度的优化, 最重要的是使用简单、方便。
Stars: ✭ 80 (+100%)
Mutual labels:  uiimage
iMessageBubble
A sub class of UITableViewCell to create exactly the same kind of bubbles that iMessage uses in iOS 8. Very easy to use and highly customizable.
Stars: ✭ 34 (-15%)
Mutual labels:  uiview
TGImage
一款以最新潮的方式来使用UIImage的swift插件
Stars: ✭ 18 (-55%)
Mutual labels:  uiimage
ViewPagers
When using the ViewPager widget it is not always obvious to the user that there are adjacent views they can navigate to. By implementing this widget you provide a clear indicator that there exists additional content which they can click or swipe to see.
Stars: ✭ 43 (+7.5%)
Mutual labels:  pagecontrol
KBImageView
UIImageView with Ken Burns effect.
Stars: ✭ 48 (+20%)
Mutual labels:  uiimage
StickyHeader
📐 Library helping to add a sticky header to an UIScrollView
Stars: ✭ 18 (-55%)
Mutual labels:  uiscrollview

Hola

Light-weight Onboard/Walkthrough View for iOS written Swift 3

Hola is a UIView that represent several views or images as View Pager, Onboard Walkthrough in different direction as Vertical or Horizontal. Its a subclass of UIView.

Gif for UIImage

verticalGif horizontalGif

Gif for UIView

verticalGif horizontalGif

Update

## Support for Storyboard

    @IBOutlet weak var holaView: Hola!

    override func viewDidLoad() {
        super.viewDidLoad()


        let _image1: UIImage = UIImage(named:"image1")!
        let _image2: UIImage = UIImage(named:"image2")!
        let _image3: UIImage = UIImage(named:"image3")!
        let _image4: UIImage = UIImage(named:"image2")!

        let imageArray: [UIImage] = [_image1,_image2,_image3,_image4]
        let viewArray: [UIView] = [...........yourViews]

        holaView.prepareImagesForStoryboard(uiimageArray: imageArray, rotation: .vertical)

        holaView.prepareViewsForStoryboard(viewArray: viewArray, rotation: .horizontal)

    }
  • Use prepareImagesForStoryboard or prepareViewsForStoryboard methods for preparing of @IBOutlet variable.

Init

public init(frame: CGRect, viewArray uiviewArray:[UIView], _ rotation: rotationWay)

If you build pager with array of UIView you should use this init function.

let simple: Hola = Hola(frame: CGRect(), viewArray: viewArray, .horizontal)


Another `init function`
```swift
public init(frame: CGRect, imageArray uiimageArray:[UIImage],_ rotation:rotationWay)

For creating Hola with array of UIImage, use this init function to generate it.

Here is the another example for usage.

let simple: Hola = Hola(frame: CGRect(), imageArray: imageArray, .vertical)

Structs

public enum rotationWay {
case horizontal
case vertical
}

rotationWay is used for specify Hola's rotation as horizontalhorizontal or vertical.

Manually Installation

git clone REPO_URL
cd Hola/
use Hola.swift

Development

Want to contribute? Feel free to contribute anything on this with describing contributed part

Todos

  • Some transaction animations
  • Feel free to play with repo.

Cons

  • The main cons of the Hola is that using the UIScrollView. If you use 1000 image for the this UIScrollView, the app wants to all image on memory, so thats not practible. If you build such a tool with UICollectionView, it will handle the photos with lazy loading, so just some of images will be load into memory which is currently showing to the user on the screen. The main difference and disadvantage of it is about not memory friendly.

License

MIT

Open Source

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].