2011-08-13 4 views
2

저는 iPhone iOS 4 (Xcode 4 포함) 프로젝트에서 작업합니다.적용 재시작시 설정 변경?

UIButton이있는보기가 있습니다. UIButton의 제목은 viewDidLoad에서 설정됩니다. 따라서 앱이 시작될 때 버튼에 제목이 있습니다.

그러나 내 앱에는 설정 번들이 있으며 설정 앱에서 버튼 제목을 변경할 수도 있습니다. 홈 버튼을 클릭하고 앱을 종료하고 설정 앱으로 이동 한 다음 새 버튼 제목을 설정합니다.

설정을 종료하고 내 앱을 다시 시작하면 버튼 제목이 새로 고쳐지지 않고 이전 버튼 제목이됩니다. 모든 것은 내가 떠난 것입니다.

iPhone을 껐다가 다시 시작하면 앱이 완전히 다시 시작될 때만 버튼이 새 제목에 있습니다.

앱이 완전히 다시 시작되지 않았을 때 버튼 제목이 변경되도록하려면 어떻게해야하나요?

감사합니다.

답변

0

설정 앱에서 다시 전환 한 후 앱이 다시 활성화되었을 때 viewWillAppear 메시지가 ViewController로 전송된다고 잘못 생각했습니다.

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(refreshButtonTitle:) name:UIApplicationDidBecomeActiveNotification object:nil]; 

다음으로 당신의 ViewController에 적절한 방법을 만들 : 당신이 UIApplicationDidBecomeActiveNotification 알림을받을의 ViewController를 등록하여 당신이 원하는 것을 성취 할 수 있어야하므로 응용 프로그램이 활성화 될 때 게시 알림은, 그러나,이 알림이 실행될 때 호출됩니다.

- (void)refreshButtonTitle:(NSNotification *)notification { 
// update the title of your button here 
} 
+0

viewWill 일시 중지 된 후에는 알림이 표시되지 않습니다. viewWillAppear에서 경고를 시도했지만 일시 중단 후 경고가 표시되지 않습니다. – boscarol

+0

viewWillAppear가 실행되지 않는다는 것이 맞습니다 - 그 점에서 오해했습니다. 나는 작동해야하는 다른 제안으로 내 대답을 업데이트했습니다. – glorifiedHacker

0

당신은 당신의 UI를 업데이트하는 행동에 따라 다음 NSUserDefaultsDidChangeNotification의 수신을 등록 할 수 있습니다 : 오타를했다, 그것은

- (void)applicationWillEnterForeground:(UIApplication *)application 

이 문서를 참조해야한다.