0

私のViewControllerにはがdataSourceあり、私の場合はWebサービスからデータをフェッチする必要があります。ViewControllerで、dataSourceメソッドにかなりの時間がかかり、別のスレッドからのみ呼び出すと想定するのは悪い習慣ですか。

だから私は次のことをします:

  1. アイテムのリストを表示する
  2. ユーザーがセルに触れる
  3. DetailViewControllerは、親がその親である状態で即座に表示されますdataSource
  4. DetailViewControllerが
    • ローディングインジケーターを表示します
    • dataSourceに別のスレッドのデータを要求します
    • 完了すると、インジケーターが非表示になります(メインスレッドで呼び出されます)
4

1 に答える 1

1

正直なところ、私はあなたが通常目にするいくつかへのそのアプローチを好みます:

  1. ユーザーがセルに触れる
  2. 電流UIViewControllerはデータソースにデータを要求します
  3. DataSourceはWebサービスにリクエストを送信します。
  4. 完了すると、新しいUIViewControllerデータがロードされます。

ただし、セルにスピナーを配置したり、背景で何かが起こっていることを示す何らかの視覚的な参照を配置したりすると、ユーザーに優れたエクスペリエンスを提供できます。いずれにせよ、それは時々好み、UX、あるいはクライアントの必要条件の問題です。

ViewControllerでdataSource-methodsにかなりの時間がかかると想定するのは悪い習慣ですか?

マーフィーの法則...したがって、それを想定し、それが発生したときに必要なメカニズムを作成することをお勧めします。

于 2012-07-05T09:46:07.973 に答える