문제

iPhone에서 웹 서비스에 많은 파일을 업로드하고 있습니다. 내부에 uiactivityindicatorview가있는 화면에 uialertview를 원합니다. 나는 그것을 잘 작동시켰다. 그러나 각 파일이 업로드되면 UialertView의 제목을 업데이트하고 싶습니다. ( "파일 업로드 1 ...", "파일 업로드 2 ..."등)

UI 런 루프가 호출되지 않으므로 동기 웹 요청이있는 루프로 제목을 설정할 수는 없습니다. Nstimer를 사용하여 웹 요청을 해제하려고 시도했지만 각 요청 기간은 예측할 수 없으므로 작동하지 않습니다. (요청이 실제로 완료되기 전에 메시지가 업데이트 될 수 있습니다.)

iPhone 대역폭이 상당히 제한되어 있기 때문에 각 파일을 한 번에 하나씩 동기로 업로드하고 싶습니다. '이 동기화 작업이 완료되면 UI가 진드기에 대한 업데이트 한 다음 다른 동기 작업을 수행하는 메커니즘을 알 수 없습니다.

도움이 되었습니까?

해결책

좋아, 여기에 내가 이것을 해결하기 위해 취한 접근법은 다음과 같습니다.

  1. uialertview를 만듭니다
  2. 비동기 웹 요청을 시작하여 항목을 게시하고 대의원을 Self로 설정하십시오.
  3. ConnectionDidFinishLoading : 메소드에서 게시 할 항목이 더 있는지 확인하십시오. 있는 경우 제목을 업데이트하고 다른 비동기 요청을 시작하십시오. 그렇지 않다면 경고를 무시하십시오.

어떤 요청이 업로드되는지 추적하기 위해 몇 가지 클래스 변수를 유지해야하지만 완벽하게 작동하며 복잡한 스레딩이나 다른 것이 포함되지 않습니다.

다른 팁

이것을 시도 했습니까?

alertView.title = @"new title";
[alertView setNeedsDisplay];
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top