検索

ホームページ  >  に質問  >  本文

objective-c - button点击触发的pushViewController怎么避免多次弹出控制器?

点击button,push到另一个controller,但是有时网络不好,点击了却没有响应,再点击一次,会弹出两次控制器,这种情况应该怎么优雅的处理。

仅有的幸福仅有的幸福2757日前647

全員に返信(4)返信します

  • 世界只因有你

    世界只因有你2017-05-02 09:22:41

    問題の説明では背景が説明されていません。
    ネットワークリクエストがスタックし、メインスレッドがブロックされた場合。
    ネットワークリクエストを非同期的に同時キューに入れ、ボタンをクリックしてプッシュメソッドを実行します。
    または、ボタンをクリックした後にボタンを無効にし、ネットワークの遮断が完了したらボタンを元に戻します。

    返事
    0
  • ringa_lee

    ringa_lee2017-05-02 09:22:41

    フラグを追加して if 判定を行うことができると思います。ユーザーがフラグをクリックして true に設定すると、次回 true と判定されたとき、ユーザーはクリックできないか、クリックがありません。効果。

    返事
    0
  • 为情所困

    为情所困2017-05-02 09:22:41

    通常、HUD はインターフェースをブロックし、ユーザーの操作を防ぐためにロードされます。

    返事
    0
  • 仅有的幸福

    仅有的幸福2017-05-02 09:22:41

    最良のユーザー エクスペリエンスは、ボタンに触れたときにユーザーにインタラクションを提供すること、つまり、ユーザーが送信できないようにフラグを設定することです。さらに、ユーザーに送信のステータスを確認させ、その後再試行してください。最終的な成功または失敗。ユーザーと対話して送信操作を完了します

    返事
    0
  • キャンセル返事