私は空のエントリで、テーブル全体を移入し、ユーザーがテーブルのスクロールを開始したときにページネーションを使用してバックグラウンドでそれらをロードするページ分割RESTサービスのクライアントを実装しています。は、どのように私は、ユーザー入力をブロックするようにreloadRowsAtIndexPathsを防ぐのですか?
これは少し詳細を除いて非常にうまく動作するようです:(UIKit
が要求するので)私は、メインUIスレッドでreloadRowsAtIndexPaths:
を呼び出しています、と私はアニメーションが時々私は入力タッチを失うことになると感じ。
これは、ユーザーがリストをスクロールを開始し、アイテムをロードするために開始し、あります。時にはリロードアニメーションは、ユーザーがもう一度画面をタッチすると同時に発生し、このタッチが認識されません。その後、スクロールは継続せず停止します。それはすべての時間を発生しません、と私はそれが(ユーザーがスクロールダウンする前に、結果の各行を読み取ることが期待されている)頻度の低いユーザーの場合だと思いますが、それはありません最後に私を悩まします。
ほとんどのアニメーションはブロックで行いますが、フラグUIViewAnimationOptionAllowUserInteraction
は本当に役に立ちます。reloadRowsAtIndexPaths
のブロック版があり、リロードアニメーションはスクロールとのユーザーのやりとりをブロックしませんか?
あなたがアイテムを再ロードするために使用しているコードを表示することができますか?別のスレッドでREST呼び出しを行っていますか?読み込みを開始していることをユーザーにどのように示していますか? –