찾다

 >  Q&A  >  본문

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

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

仅有的幸福仅有的幸福2757일 전651

모든 응답(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
  • 취소회신하다