2016-10-07 4 views
-2

여러 종류의 코드를 실행하여 x 초 동안 진행률 막대를 증가시키고 백그라운드에서 진행하는 동안 계속 진행합니다. 현재 바는 백그라운드에서 초점을 맞출 때 타이머를 통해 중단 된 부분부터 다시 시작합니다.iOS Objective 백그라운드에서 진행률 막대 업데이트

사용자가 앱을 최소화해도 타이머를 계속 유지하려면 어떻게해야합니까?

답변

-1

.h로 NSTimer 속성을 선언하십시오. 그리고 어디서나 같은에서 호출 :

self.nstimer= [NSTimer scheduledTimerWithTimeInterval:0.10 self selector:@selector(updateTime:) userInfo:nil repeats:YES]; 

그리고 방법 내부

(audiocontroller는 다른 클래스 속성 인) :

- (void)updateTime:(NSTimer *)timer 
{ 

// Progress bar value 
    progressView.progress = ((float)recievedData/(float) xpectedTotalSize); 

} 

심지어 응용 프로그램이 배경에있는 메소드를 호출 할 것입니다. applicationDidBecomeActive() 메소드에서이 메소드 호출을 취소 할 수 있습니다.

+0

감사합니다. 프로세스 바를 진행할 수 있습니까? 예 : _bar.progress + = 0.1/120; – user6934446

+0

이 방법으로 모든 UI 업데이트를 구현할 수 있습니다. 나는 나의 프로젝트에도 그것을했다. 그냥 적용하고 참조하십시오. 받아들이고 도움이 필요하면 내 대답을 upvote하십시오. @ user6934446 –