2011-08-13 2 views
0

私はJSONクエリから記入するUITableViewを持っています。より多くのデータのためにUITableViewをリロードするには?

私はプライベートメッセージでそれを記入して動作します。

JSONクエリは、私はすべてのサイト20件のPMのために取得した「サイト」の特性を有しています。ですから、最初はSite = 0になり、20PMSがロードされました。

私は電子メールアプリのような機能を持っています(私はそこに見たと思います):下にスクロールして最後に到達すると(アプリケーションが20 PMに達しました)、アプリケーションは次の20などのように。

どのように実現するのですか?

答えて

0

私は、カスタム・ロジックを使用して電子メールアプリなどの機能を実装することができると思います。あなたがやることは、より多くのデータをロードするためにtableviewの最後の行を保持することです。その最後の行に "Load more ..."のようなメッセージが表示されます。ユーザーがその行に触れるたびに、より多くのデータをロードしてテーブルビューを更新する必要があります。

+0

https://github.com/stephenjames/ContinuousTableviewは、私が知っている理論を​​いただきありがとうございますが、これは非常に私を助けていません...そう?の仕方?チュートリアル?例?リンク? – kovu17

1

あなたの最後の行のインデックスパスを保存し

[UITableView reloadRowsAtIndexPaths:withRowAnimation:] 

を実装それとも、scrollToRowAtIndexPath使用することができます。atScrollPositionを:アニメーション:

scrollPosition

A constant that identifies a relative position in the receiving table view 
(top, middle, bottom) for row when scrolling concludes. 

See “Table View Scroll Position” a descriptions of valid constants in docs 

をそして、あなたはあなたの最後のスクロールを得ればあなたのテーブルビューをリロードするだけです[tableView reloadData]

しかし、私は再ロード後に思うデータを再ロードすると思います(私は確信していません)tableViewそれはあなたがいつもtableViewのlastIndexpathを保存することができますし、ちょうどのlastIndexpathを保存することができます: atScrollPosition:アニメーション:またはあなたがscrollToNearestSelectedRowAtScrollPositionを使用することができます:アニメーション:

+0

@ kovu17は解決された問題です:)? –

0

キーのオプション開発のスティーブン・ジェームズと彼の同僚は、同様の問題に出くわした:http://blog.keyoptions.co/tableview-with-automatic-load-more

彼らはいくつかのものでなければならないサンプルアプリ(ContinousTableview)を構築していますあなたに助けてください。ソースコードはGitHubの次の場所にあります。

関連する問題