2012-06-29 3 views
0

방금 ​​전에 발견 한 문제에 대한 해결책을 찾으려고합니다. 검색을 시도했으나 찾고있는 것이 아닙니다.Objective-C iOS, 텍스트 업데이트 지연 설정

두 개의 탭이있는 GPS-app를하고 있습니다. 나는 맵 뷰 (CLLocation 사용)에서 거리를 추적하고, 탭을 다른 뷰로 변경하면 시작한 시점과의 거리를 나타내는 stringtext가 바로 업데이트되지 않고 몇 초가 걸립니다.

그리고 내가 중지 버튼을 누르면 초를 기다려서 실제 거리가 업데이트되기를 원합니다. 하지만 그 앱을 멈추고 싶지 않아. (*있는 NSDate 미래 = [있는 NSDate dateWithTimeIntervalSinceNow : 3.0] [NSThread sleepUntilDate : 미래])

나는 동안 멀티 태스킹 그래서 만약 내가 두 번째 탭의 셀에서의 거리에 문자열을 저장하고있어 애플 리케이션은 내가 단지 애플 리케이션을 시작하고 중지를 눌러 가고 싶어합니다. 그런 다음 새로운 거리가 정확하고 저장됩니다. 희망을 나는이 많은 텍스트와 당신을 혼동하지 않았다. 나는 당신이 내가 원하는 것을 이해하기를 희망한다!

들으

+0

How'bout는 developer.apple.com을 발사하고, 문서를 읽어? –

답변

2
[label performSelector:@selector(setText:) withObject:newText afterDelay:3.0]; 
+0

여기 [manual reference] (https://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/nsobject_Class/Reference/Reference.html#//apple_ref/doc/uid/20000050- performSelector : withObject_afterDelay_)를 호출합니다. – poncha

+1

[myLabel performSelector : @selector (setText :) withObject : theString afterDelay : 3.0f]; –

+0

@DavidH 맞아, 내 대답이 업데이트되었습니다. –

0

그래서 사용 dispatch_after이 싶은 것입니다 :

dispatch_after(3 seconds, dispatch_get_main_queue(),^
    { 
     myLabel.text = <the value you want to appear>; 
    });