2010-12-10 13 views
0

RSSフィードをテーブルビューに読み込んでいます。私は10項目を読み込み、最後のセルまたは最後のセルの下のどこかに "Load More"と言うことにします。ユーザーがLoad Moreをクリックすると、残りのRSSフィードがロードされます。 RSSは私のウェブサイトから出てくるので、(クエリ文字列などを使って)サーバー側で10またはすべてのエントリを取得するようにプログラムすることができます。UITableViewの "Load More"

最後のセルには、フィードの残りの部分を読み込むためのメソッドを呼び出すためにクリックしたリンクをロードするようにテーブルをレンダリングする方法があります。 「もっと読み込む」リンク)。

+0

私は潜在的な解決策で私の答えを更新しました。お役に立てれば。 :-) –

+0

私はこのソリューションのコードを共有することができますか?私はiPhoneプログラミングには新しく、私はこのソリューションを実装する必要があります。私はHejaziによって与えられたリンクの解を完全に理解していません... – user755278

答えて

2

これを確認してください:UITableView rows load asynchronously

+0

ありがとうございました。私はそれができると思ったのとまったく同じ方法です。私はこの方法を使用します。 – Allen

0

UITableViewの仕事(つまり、必要に応じてセル/セルのコンテンツを要求する)のために、 '詳細読み込み'リンクの値は何ですか? (とりわけRSSフィードを完全にロードする必要があると思われます)

つまり、ユーザーがテーブルビューをスクロールする行為で十分ではありませんか?

ユーザーインターフェイスの観点からは少し混乱します。下部に「負荷を増やす」とすると、古い投稿や新しい投稿が読み込まれますか?これらの投稿はどこに表示されますか?ビューの上部または下部に? (私はあなたがフィードを消費している場合、これはおそらく、理にかなっているようあなたは、「最新の最初の」順番にセルを注文していると仮定しています。)

更新

ただし、を場合本当にこれを行うには私は最初にあなたのデータソースは、 "n" +1要素を持っていることをUITableViewに伝えることをお勧めします。

ユーザがこの最終セルを選択すると、これを通常通りにキャプチャする必要があります。偽の "load more"セルがある場合は、データソースにすべての内容をUITableViewに表示するように指示します。次に、(reloadDataメソッドを使用して)リロードするためにテーブルビューを取得するだけで、すべてがうまくいくはずです。

+0

より多くのリンクをロードすると、メソッドのセレクタになる可能性があります。私はこれを、MSNBCや他の多くのアプリが動作するようにしたいと思います。つまり、最新の記事を表示し、ユーザーがもっと深くしたいかどうかを決定させてください...それは役に立ちますか?感謝 – Allen

+0

ありがとう...それは面白いアプローチ(サーバー側でそれをやっている)です。しかし、私は人々がこれをやっている他の方法があると思った。そして、はい、ロードはもっと下にあり、古いポストをロードします(他の多くのアプリと同じように)。 – Allen

+0

@Allen - "データソース"とは、UITableViewにデータを供給するために使用しているものを意味します。つまり、サーバーからすべてのデータを1回で読み込むことはできますが、内部データストレージには最初に「n」が最初に表示されます。 –

関連する問題