All Projects → takuoka → Pulltobounce

takuoka / Pulltobounce

Licence: mit
Animated "Pull To Refresh" Library for UIScrollView. Inspired by https://dribbble.com/shots/1797373-Pull-Down-To-Refresh

Programming Languages

swift
15916 projects
ruby
36898 projects - #4 most used programming language

Projects that are alternatives of or similar to Pulltobounce

Layerjs
layerJS: Javascript UI composition framework
Stars: ✭ 1,825 (-2.2%)
Mutual labels:  library
Garland View Android
≡ GarlandView seamlessly transitions between multiple lists of content. Made by @Ramotion
Stars: ✭ 1,855 (-0.59%)
Mutual labels:  library
Harfbuzz
HarfBuzz text shaping engine
Stars: ✭ 2,206 (+18.22%)
Mutual labels:  library
Routeros Api Php
Mikrotik RouterOS API PHP client for your applications
Stars: ✭ 152 (-91.85%)
Mutual labels:  library
Php Ip Tools
Useful tools for IP manipulations
Stars: ✭ 152 (-91.85%)
Mutual labels:  library
Jails
An alternative for Javascript Vanilla Applications
Stars: ✭ 153 (-91.8%)
Mutual labels:  library
Opends
Template Library of Data Structures in C++17
Stars: ✭ 151 (-91.91%)
Mutual labels:  library
Ofxgpio
Library C++ for raspberrypi and orangepi, GPIO interfaces compatible with openframeworks.
Stars: ✭ 155 (-91.69%)
Mutual labels:  library
Python Quickui
Scientific One-Liner Interactive GUI Library
Stars: ✭ 153 (-91.8%)
Mutual labels:  library
Android Ui Animation Components And Libraries
Android UI libraries, components and animations by @Ramotion
Stars: ✭ 1,982 (+6.22%)
Mutual labels:  library
Weihanli.common
common tools,methods,extension methods etc... .net 常用工具类,公共方法,常用扩展方法等,基础类库
Stars: ✭ 152 (-91.85%)
Mutual labels:  library
Aerogameframework
AeroGameFramework is a Roblox game framework that makes development easy and fun. The framework is designed to simplify the communication between modules and seamlessly bridge the gap between the server and client.
Stars: ✭ 150 (-91.96%)
Mutual labels:  library
Gappein Chat Sdk
A plug and play modular toolkit for integrating the Chat feature on top of Firebase!
Stars: ✭ 154 (-91.75%)
Mutual labels:  library
Libcache
A Lightweight in-memory key:value cache library for Go.
Stars: ✭ 152 (-91.85%)
Mutual labels:  library
Codeeditor
Code Editor Native Way
Stars: ✭ 155 (-91.69%)
Mutual labels:  library
Show Case Card View
Show case card view
Stars: ✭ 151 (-91.91%)
Mutual labels:  library
Rot.js
ROguelike Toolkit in JavaScript. Cool dungeon-related stuff, interactive manual, documentation, tests!
Stars: ✭ 2,002 (+7.29%)
Mutual labels:  library
Paintablevectorview
PaintableVectorView enables to change color of paths/groups in Vector Drawable (SVG)
Stars: ✭ 156 (-91.64%)
Mutual labels:  library
Dem.net
Digital Elevation model library in C#. 3D terrain models, line/point Elevations, intervisibility reports
Stars: ✭ 153 (-91.8%)
Mutual labels:  library
Atty
are you or are you not a tty?
Stars: ✭ 153 (-91.8%)
Mutual labels:  library

PullToBounce

Platform Language License CocoaPods

Animated "Pull To Refresh" Library for UIScrollView.

You can add animated "pull to refresh" action to your UIScrollView, UITableView and UICollectionView.

Inspired by https://dribbble.com/shots/1797373-Pull-Down-To-Refresh

Objective-C version is here.

Xamarin.iOS version is here.

ScreenShot

Demo GIF Animation

You can play demo at appetize.io.

Installation

You can install this to your project via CocoaPods.

pod 'PullToBounce'

Usage

Please Wrap your scroll view

// Please wrap your scroll view
tableView.frame = yourFrame
let tableViewWrapper = PullToBounceWrapper(scrollView: tableView)

// Please add wrapper view to your view instead of your scroll view.
bodyView.addSubview(tableViewWrapper)

The frame of wrapper will be same as your scrollView.

And the color will be same as your scrollView's background color.

Event Handler

tableViewWrapper.didPullToRefresh = {
    didFinishYourLoading() {
        tableViewWrapper.stopLoadingAnimation()
    }
}

Custom Animation

Default arguments of "init" of PullToBounceWrapper

init(
  scrollView: UIScrollView, // this is the only required argument
  bounceDuration: CFTimeInterval = 0.8,
  ballSize:CGFloat = 36,
  ballMoveTimingFunc: CAMediaTimingFunction = CAMediaTimingFunction(controlPoints:0.49,0.13,0.29,1.61),
  moveUpDuration: CFTimeInterval = 0.25,
  pullDistance: CGFloat = 96,
  bendDistance: CGFloat = 40,
  didPullToRefresh: (()->())? = nil
)

You can use these arguments to customize animation.

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].