私が知っている奇妙な質問。私は、商業センターの訪問者をターゲットとする ios 用のアプリを開発しています。アプリは、xml システムを使用して内部更新システムを提供します。これは、ネットの応答が遅い場合と速い場合で、さまざまな理由から動作が異なります。違いは、UI のさまざまなタイプの誤動作にあり、ユーザーの接続が遅い場合、または高速な場合にのみ、2 つの解決策 (1 つは高速な場合の問題、 1 つは遅いケースの場合) 私が抱えている問題については、もう 1 つのケースでは誤動作の存在が関係しています。この場合、高速または低速の接続に属するユーザーを優先することになっていますが、その理由は何ですか?
編集:問題を説明しようとします。xml 経由で更新する必要があるビューがあります。ビューを起動すると、更新が必要かどうかを制御するためにxmlにアクセスしようとするという単純な事実に時間がかかります。アクティビティインジケーターを追加しましたが、ネットが遅くなるにつれて、アクティビティインジケーターが表示されるまでに時間がかかるようで、ユーザーがアプリがフリーズしていると考える時間が必要になるため、うまく機能しません。試してみてください彼が触れてはならないボタンをタッチするには(それは機能せず、アプリが機能しないと彼に思わせます)など。だから私はできる限り速くアクティビティインジケータを追加するために performSelectorInBackground を使用しました.SLOW接続の場合は正常に動作します. FAST 接続の場合、アクティビティは非常に高速に表示されるため、接続の速度が原因で、更新を行う必要があるかどうかの制御にほとんど時間がかからない場合でも表示されます。ピコ秒のアクティビティインジケーターを表示させ、避けるべきひどいグラフィック効果を与えます。FASTの場合の問題を回避するために、追加しました
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, 0.000001 * NSEC_PER_SEC), dispatch_get_current_queue(), ^{ code to add the activity indicator; });
このようにして、FASTの場合のグラフィカルな問題はありませんが、SLOWの場合、dispatch_after(推測)の実行により、アクティビティインジケーターの表示が遅くなりすぎて、アプリがフリーズしたような印象を受けます。だから私の手は縛られていて、私はそれが何を好むのか分かりません。