2013-03-08 2 views
0

이것은 xcode로 iOS 프로그래밍을 배우는 제 2의 날이기 때문에 쉬운 방법 일 것입니다. 알아낼 수없는 것입니다.ViewController가 활성화되었는지 감지하는 방법은 무엇입니까?

StoryBoards와 UITabViewController를 3 개의 탭 항목과 함께 사용하고 있습니다. 두 번째 탭에서 사용자가 해당 탭을 선택할 때마다 카메라를 시작하고 싶습니다.

두 번째보기가 활성화되었음을 어떻게 감지합니까? 이러한 경우에 트리거되는 이벤트가 있습니까?

+2

뷰 컨트롤러의'viewWillAppear 구현 :'또는'viewDidAppear :'방법을. – rmaddy

+0

고마워, 그게 효과가있어.하지만 정확히 원하는대로는 아니야. 요점은이 이벤트에서 카메라를 보여 주므로 사용자가 사진을 찍을 수 있고 사진을 찍은 후에 이미지가 표시된다는 것입니다. ViewController의 ImageView 내부. 요점은 imagepicker가 제시된 후에도이 이벤트가 시작된다는 것입니다. 뷰가 tabcontroller에서 활성화 될 때 어떻게해야합니까? 아니면 활성화 소스를 어떻게 구별 할 수 있습니까? – bandreas

+0

그런 다음 실제로 발생하는 것과 비교하여 실제로 원하는 것을 설명하십시오. – rmaddy

답변

0

ViewController의 viewDidLoad 메서드를 사용할 수도 있습니다. 이 방법에 무엇을해야합니까 :

- (void)viewDidLoad 
{ 
} 
+0

위에서 언급했듯이보기가 tabcontroller에서 활성화 될 때 카메라를 시작해야합니다. 불행히도 viewDidLoad는 응용 프로그램 수명 당 한 번만 호출되며 (지금까지 내가 경험 한대로) viewdidAppear는 그림을 찍은 후에도 호출됩니다. – bandreas

+0

두 번째 탭을 선택할 때마다 카메라를 활성화하려고합니다. 나는 그 탭을 선택할 때마다 그 탭의 뷰 컨트롤러의 viewDidLoad가 호출되어야한다고 생각한다. 그게 아닌가? 뷰 컨트롤러가 이미 메모리에로드 된 경우 호출되지 않을 수도 있습니다. 이 경우, 예, viewWillAppear/viewDidAppear가 최선의 방법입니다. 카메라를 사용할시기와 사용하지 않을 때를 결정하는 플래그가 있습니다. – AC1

+1

예, viewWillAppear : 또는 viewDidAppear :에 플래그를 사용하는 것이 좋습니다. – bandreas

관련 문제