All Projects → uptechteam → Airbar

uptechteam / Airbar

Licence: mit
iOS library - UIScrollView driven expandable menu.

Programming Languages

swift
15916 projects

Projects that are alternatives of or similar to Airbar

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 (-95.3%)
Mutual labels:  uiscrollview
JQScrollNumberLabel
JQScrollNumberLabel:仿tumblr热度滚动数字条数, 一个显示数字的控件,当你改变其数字时,能够有滚动的动画,同时动画和位数可以限制,动态创建和实例化可选,字体样式自定义等。
Stars: ✭ 29 (-95.13%)
Mutual labels:  uiscrollview
Mylinearlayout
MyLayout is a powerful iOS UI framework implemented by Objective-C. It integrates the functions with Android Layout,iOS AutoLayout,SizeClass, HTML CSS float and flexbox and bootstrap. So you can use LinearLayout,RelativeLayout,FrameLayout,TableLayout,FlowLayout,FloatLayout,PathLayout,GridLayout,LayoutSizeClass to build your App 自动布局 UIView UITab…
Stars: ✭ 4,152 (+596.64%)
Mutual labels:  uiscrollview
StickyHeader
📐 Library helping to add a sticky header to an UIScrollView
Stars: ✭ 18 (-96.98%)
Mutual labels:  uiscrollview
XLRefresh
iOS 下拉刷新工具
Stars: ✭ 25 (-95.81%)
Mutual labels:  uiscrollview
Slidecontroller
Swipe between pages with an interactive title navigation control. Configure horizontal or vertical chains for unlimited pages amount.
Stars: ✭ 279 (-53.19%)
Mutual labels:  uiscrollview
Pulltomakesoup
Custom animated pull-to-refresh that can be easily added to UIScrollView
Stars: ✭ 1,928 (+223.49%)
Mutual labels:  uiscrollview
Zseatselector
Create a Seat Map Layout
Stars: ✭ 539 (-9.56%)
Mutual labels:  uiscrollview
ScrollAnimationShowcase
[ING] - UIScrollViewやUICollectionViewの特性を活用した表現サンプル
Stars: ✭ 15 (-97.48%)
Mutual labels:  uiscrollview
Mbtwitterscroll
Recreate Twitter's profile page scrolling animation for UITableView and UIScrollViews.
Stars: ✭ 421 (-29.36%)
Mutual labels:  uiscrollview
Hola
Light-weight Onboard/Walkthrough UIView/UIImage representer ⏪ & ⏩ ⏫ & ⏬
Stars: ✭ 40 (-93.29%)
Mutual labels:  uiscrollview
EmbeddedScrollView
Embedded UIScrollView for iOS.
Stars: ✭ 55 (-90.77%)
Mutual labels:  uiscrollview
Webbrowser
iOS浏览器 Web Browser for iOS
Stars: ✭ 332 (-44.3%)
Mutual labels:  uiscrollview
ISVImageScrollView
Image preview component with zoom, scroll and rotation support
Stars: ✭ 28 (-95.3%)
Mutual labels:  uiscrollview
Jt3dscrollview
ScrollView with custom effects during the scroll for iOS
Stars: ✭ 494 (-17.11%)
Mutual labels:  uiscrollview
scrollRulerView
请使用 CYRuler (Please use CYRuler)
Stars: ✭ 31 (-94.8%)
Mutual labels:  uiscrollview
Baraba
Make your UIScrollView scroll automatically when user is looking 👀 by tracking face using ARKit and AVFoundation
Stars: ✭ 268 (-55.03%)
Mutual labels:  uiscrollview
Gtscrollnavigationbar
A scrollable UINavigationBar that follows a UIScrollView
Stars: ✭ 559 (-6.21%)
Mutual labels:  uiscrollview
Pulltomakeflight
Custom animated pull-to-refresh that can be easily added to UIScrollView
Stars: ✭ 497 (-16.61%)
Mutual labels:  uiscrollview
Persei
Animated top menu for UITableView / UICollectionView / UIScrollView written in Swift
Stars: ✭ 3,395 (+469.63%)
Mutual labels:  uiscrollview

AirBar

UIScrollView driven expandable menu.


Description

AirBar is a library for creating cool expandable menus. Library observes UIScrollView scroll and provides state you can apply to your UI elements.

Demo

AirBar Demo

Installation

Library supports Carthage dependency manager. To install AirBar add following line to Cartfile in the root folder of your project.

github "uptechteam/AirBar" ~> 2.0

Using CocoaPods add following line to your project Podfile

pod 'AirBar', '~> 2.0'

Using Swift Package Manager, add the following line to your Package.swift:

dependencies: [
  .package(url: "https://github.com/uptechteam/AirBar.git", .exact("2.0.6")),
],

How to use

  1. Create BarController object using BarController(configuration Configuration, stateObserver: StateObserver) initializer, where Configuration is struct that contains height config and StateObserver is closure that will be called on state change.

  2. Bind BarController to your UIScrollView object using set(scrollView: UIScrollView) method.

  3. Provide UI transformations in closure passed as StateObserver init argument. Closure will receive State object that has following public methods:

  • height() - returns bar height;
  • transitionProgress() - returns bar transition progress between 0 and 2, where 0 - compact state, 1 - normal state, 2 - expanded state;
  • value(compactNormalRange: ValueRangeType, normalExpandedRange: ValueRangeType) - returns transformed CGFloat value that can be used for configuring UIKit element properties. ValueRangeType is enum with .range(CGFloat, CGFloat) and .value(CGFloat) cases. You can use it for example if you need static value 1 in normal-expanded transition and range (0, 1) in compact-normal transition.
  1. (Optional) Contribute to repository.

Also you can find example application in library project.

Multiple UIScrollView objects

BarController supports using multiple UIScrollView objects. You can use preconfigure(scrollView: UIScrollView) method to configure scrolling view before setting it with set(scrollView: UIScrollView) method.

TODO

  • Implement expansion/concatination resistance;
  • ...
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].