2009-02-05 3 views
0

저는 RootViewController와 SubViewController가 있습니다. 나는 어느 방향 으로든 그 견해를 횡단한다. RootViewController는 UITableView SubClass입니다. 선택한 행에 따라 하위보기의 제목을 변경하려면 self.navigationItem.title = [chunks objectAtIndex:1];navigationItem.title이 새로 고쳐지지 않습니다.

하위보기를 처음로드 할 때 작동합니다. 그러나 RootViewController로 돌아가서 하위 뷰를 다시로드하면 이전 제목이 유지됩니다. 어떤 아이디어를 놓치고 있습니까?

답변

0

방금 ​​응용 프로그램에서 사용해 보았습니다.

self.navigationItem.title = @"Foo" 

을 사용하여 제목을 설정하면 탐색 바의 이름이 즉시 변경됩니다. 난 당신이 다른 곳에서 버그를 가지고 있다고 생각합니다. SubViewController를 처음 호출 할 때만 코드를 호출하게됩니다. 그 줄에 중단 점을 붙이고 실제로 두 번째로 호출되는지 확인합니다. 또는 [청크 objectAtIndex : 1]은 항상 동일한 문자열을 반환합니다.

또는 아마도 귀하의 질문을 이해하지 못 하겠습니다. 내가 말할 수있는 한 그것은 당신이 기대하고있는 것처럼 일합니다.

1

특별한 경우에 viewWillAppear에서 제목을 설정하려고합니다.보기가 화면에 나타날 때마다 제목이 설정됩니다.

+0

나는 똑같은 문제가 있었는데 이것이 나를 위해 일한 FWIW입니다. 그것은 여전히 ​​나에게 조금 "해커"를 느낀다. – Prairiedogg

0

viewDidLoad 메서드에서 제목을 변경하려고합니다. viewDidLoad는 뷰가 처음로드 될 때만 호출됩니다. 동일한 viewcontroller의 인스턴스를 재사용하는 경우에는 viewDidLoad가 한 번만 호출됩니다.

대신에 viewWillAppear 메서드에서 제목을 설정해보십시오. 뷰가 표시 될 때마다이 메서드가 호출됩니다. 그게 효과가있다.

관련 문제