2016-06-16 2 views
0

임의의 프로세스가 진행되는 동안 사용자에게 화면 상에 상태를 제공해야합니다. 얼마나 오래 걸릴지 알 길이 없습니다. 어떻게 progressView을 영원히 증가시킬 수 있습니까 (1에 가까워지면 속도가 느려집니다).진행보기에 대한 무한 단계?

답변

0

하나의 가능한 솔루션은 끝까지 거리의 반을 증가시키는 것입니다. 따라서 progressview가 처음 0 일 때, 1을 빼고 0이되고 2로 나눕니다. 그래서 (1-0)/2 = .5. 다음 번에는 (1-.5)/2 = .25이 될 것이므로 .25를 추가하고 .75를 얻을 것입니다. 이것은 처음에는 매우 바람직한 해결책은 아니지만 실제로는 첫 번째 부분이 실제로 완료되면 중간에 완료되는 것으로 가정합니다. 완료 및 진행보기 상당히 느려질 것입니다

0

난 임의의 프로세스에 대해 조금 더 게시해야하지만 일반적으로 무한 진행보기 회전 동그라미 또는 사용자가 자사의 고정되지 않은 것을 보여주는 지속적인 동작이 될 것이라고 생각 . 발생하는 텍스트로 업데이트 할 수있는 레이블을보기에 포함 할 수 있습니다.

계산을 수행하려면 총 및 현재 금액 값이 있어야합니다. 루프의 예를 들어 당신은 같은 것을 할 수 있도록 : 당신이 애니메이션은 단지 대신 애니메이션 지속 시간을 증가 속도를해야하는 경우

var objects = [Object]() 
progressView.label.text = "starting" 
progressView.startAnimating() 
var i = 0 
for object in objects { 
    progressView.label.text = "processing \(i + 1) of \(objects.count)" 
    doProcess(object) 
    progressView.label.text = "processed \(i + 1) of \(objects.count)" 
    i = i + 1 
} 
progressView.label.text = "done" 

을 내가

1

This 당신이 기꺼이하는 경우에 당신의 가장 친한 친구가 될 것입니다 진행보기를 바꾸려면! 그것은 당신이 원하는 모든 것을 가지고 있습니다.