LINEで送る
Pocket

ナウなiPhoneAppでよく見かける引っ張って更新(Pull To Refresh)をUIWebViewで実現してみました。

PullToRefresh用フレームワークは色々あったのですが、
下記のフレームワークが有名どころのようなので、これを使ってみました。

leah/PullToRefresh

◆ まずはgithubよりプロジェクトをcloneします。
git clone https://github.com/leah/PullToRefresh.git

ファイルも少ないので、この辺は説明不要でしょう。

◆ ビューの階層を以下のようにします。
DemoTableViewController(UIViewController)
L UITableView
L UITableViewCell
L UIWebView

◆ 変更箇所をざっくり解説
1. セクション数、セル数を1つに固定
2. UIWebViewをcellにaddsubview
3. セルのheightを416pxに設定 (480 – 20 – 44)
4. refreshメソッドで[_webview reload]を呼ぶ
5. webViewのロードが完了したら [self stopLoading] を実行し、アニメーションを止める。

文章ではいまいち伝わらないと思いますので、実際にやってみたい方はgithubからcloneして下さい。

※PullRefreshTableViewController のスーパクラスを UIViewController に変えているのは個人的に使い勝手がいいのでやっているだけです。

変更したソース
o24/PullToRefresh