Sephiroth87/ODRefreshControl

A pull down to refresh control like the one in Apple's iOS6 Mail App

Objective-C

2,129

50 commits

updated Jan 25, 2016

See the code

README

__*Notice:* There's a new 2.0 branch where I updated the control for iOS7 plus I plan to do some interesting new features. If people could try it out so I can be sure I didn't break anything it'd be great, and report any issue you find, I'd really appreciate that :)

h1. ODRefreshControl

!http://www.orangeinaday.com/img/ODRefreshControl.jpg!

ODRefreshControl is a "pull down to refresh" control for UIScrollView, like the one Apple introduced in iOS6, but available to anyone from iOS4 and up.

h2. Installation

* Drag the @ODRefreshControl/ODRefreshControl@ folder into your project. 
* Add the *QuartzCore* framework to your project.
* @#import "ODRefreshControl.h"@

__*Important note if your project doesn't use ARC*: you must add the @-fobjc-arc@ compiler flag to @ODRefreshControl.m@ in Target Settings > Build Phases > Compile Sources.__

h2. Usage

(see sample Xcode project in @/Demo@)

h3. Adding a refresh control to your table view

<pre>
ODRefreshControl *refreshControl = [[ODRefreshControl alloc] initInScrollView:self.scrollView];
</pre>

To know when the refresh operation has started, add an action method to the UIControlEventValueChanged event of the control

<pre>
[refreshControl addTarget:self action:@selector(dropViewDidBeginRefreshing:) forControlEvents:UIControlEventValueChanged];
</pre>

If you’d like to programmatically start the refresh operation, use

<pre>
[refreshControl beginRefreshing];
</pre>

Remember to tell the control when the refresh operation has ended

<pre>
[refreshControl endRefreshing];
</pre>

h4. Customization

The @ODRefreshControl@ can be customized using the following properties:

<pre>
@property (nonatomic, strong) UIColor *tintColor;
@property (nonatomic, assign) UIActivityIndicatorViewStyle activityIndicatorViewStyle;
@property (nonatomic, strong) UIColor *activityIndicatorViewColor; // iOS5 or more
</pre>

h2. Credits

ODRefreshControl is brought to you by "Fabio Ritrovato":http://orangeinaday.com and "contributors to the project":https://github.com/Sephiroth87/ODRefreshControl/contributors. If you have feature suggestions or bug reports, feel free to help out by sending pull requests or by "creating new issues":https://github.com/Sephiroth87/ODRefreshControl/issues/new. If you're using ODRefreshControl in your project, attribution would be nice.

Not written in Markdown, so it's shown here as plain text — view it formatted on GitHub.

Sephiroth87/ODRefreshControl

A pull down to refresh control like the one in Apple's iOS6 Mail App

Objective-C

2,129

50 commits

updated Jan 25, 2016

See the code

README

__*Notice:* There's a new 2.0 branch where I updated the control for iOS7 plus I plan to do some interesting new features. If people could try it out so I can be sure I didn't break anything it'd be great, and report any issue you find, I'd really appreciate that :)

h1. ODRefreshControl

!http://www.orangeinaday.com/img/ODRefreshControl.jpg!

ODRefreshControl is a "pull down to refresh" control for UIScrollView, like the one Apple introduced in iOS6, but available to anyone from iOS4 and up.

h2. Installation

* Drag the @ODRefreshControl/ODRefreshControl@ folder into your project. 
* Add the *QuartzCore* framework to your project.
* @#import "ODRefreshControl.h"@

__*Important note if your project doesn't use ARC*: you must add the @-fobjc-arc@ compiler flag to @ODRefreshControl.m@ in Target Settings > Build Phases > Compile Sources.__

h2. Usage

(see sample Xcode project in @/Demo@)

h3. Adding a refresh control to your table view

<pre>
ODRefreshControl *refreshControl = [[ODRefreshControl alloc] initInScrollView:self.scrollView];
</pre>

To know when the refresh operation has started, add an action method to the UIControlEventValueChanged event of the control

<pre>
[refreshControl addTarget:self action:@selector(dropViewDidBeginRefreshing:) forControlEvents:UIControlEventValueChanged];
</pre>

If you’d like to programmatically start the refresh operation, use

<pre>
[refreshControl beginRefreshing];
</pre>

Remember to tell the control when the refresh operation has ended

<pre>
[refreshControl endRefreshing];
</pre>

h4. Customization

The @ODRefreshControl@ can be customized using the following properties:

<pre>
@property (nonatomic, strong) UIColor *tintColor;
@property (nonatomic, assign) UIActivityIndicatorViewStyle activityIndicatorViewStyle;
@property (nonatomic, strong) UIColor *activityIndicatorViewColor; // iOS5 or more
</pre>

h2. Credits

ODRefreshControl is brought to you by "Fabio Ritrovato":http://orangeinaday.com and "contributors to the project":https://github.com/Sephiroth87/ODRefreshControl/contributors. If you have feature suggestions or bug reports, feel free to help out by sending pull requests or by "creating new issues":https://github.com/Sephiroth87/ODRefreshControl/issues/new. If you're using ODRefreshControl in your project, attribution would be nice.

Not written in Markdown, so it's shown here as plain text — view it formatted on GitHub.

Significant stargazers

Olivier Poitrey

5,103 followers · starred Feb 2013

Germán Méndez Bravo

350 followers · starred Jun 2013

Felix Schulze

250 followers · starred Jul 2012

Gen

113 followers · starred Jul 2012