2009-11-16 4 views
0

저는 신진 아이폰 개발자입니다. 최선을 다하고 있지만 UINavigationController에 관한 쿼리가 있습니다.UINavigationController가 필요합니까?

나는 3 개의 탭이있는 탭 막대 앱이 있습니다.

  • 첫 번째 탭에는 앱의 다른 "섹션"을로드하는 5 개의 UIButton이 있으며 각 섹션에는 여러 개의보기가 있습니다.

  • 다른 탭에는 일부 정보 만 표시됩니다.

  • 사용자가 내 첫 번째 탭에서 UIButtons 중 하나를 선택하면 [self.view addSubview : xxxxx];

사용자가이보기에서 벗어날 때 나는 [self.view removeFromSuperview]를 사용합니다.

내 질문은 :

이 작업을 수행하는 나쁜 방법입니까? 내비게이션 컨트롤러를 사용해야합니까? 내가 사용자 정의 UI를 원했기 때문에 내가 사용하지 않은 이유는 네비게이션 컨트롤러가 당신의 디자인을 조금이라도 강요한다는 것을 이해하기 때문입니다.

그리고 핵심 저장소 데이터를 사용하여 영구 저장소를 구현합니다 ....이 응용 프로그램을 구현하면 내 핵심 데이터 문제가 발생합니까?

thsi 관련 도움을 주시면 감사하겠습니다. 당신이 탐색 컨트롤러를 필요로하지 않는 경우

답변

1

5 개의 버튼 중 하나를 두드리면 사용자가 다른보기로 이동하고 5 개의 버튼이 사라집니다. 이것은 네비게이션 컨트롤러가 설계 한 것이며 뷰를 추가하거나 제거하는 것보다 메모리를 더 잘 관리 할 수 ​​있도록 도와줍니다 (추가/제거되는 뷰의 수는 성능면에서 더 좋을 수 있습니다). Ole이 지적했듯이 NavigationController는 맞춤 설정이 가능하고 많은 것을 부과하지 않습니다.

NavigationController는 더 많은 유연성을 제공합니다. 버전 2.0에서 단추 중 하나를 두드린 후 다른 계층 구조 수준을 추가하려고한다고 가정 해보십시오. 그런 다음보기를 계속 추가하면서 MainView가 커질 것입니다. UINavigationController는 코드를 잘 구조화하고 나중에 탐색을 확장 할 수있게합니다.

CoreData는 매우 유연하며 UI에 독립적입니다. 당신은 이것에 대해 걱정할 필요가 없습니다.

+0

답변을 주셔서 감사합니다. 핵심 데이터에 대한 함축적 인 의미와 함께 내비게이션 컨트롤러의 필요성을 이해하게되었습니다! –

2

먼저

건배

톰, 다음을 사용하지 마십시오. 당신은 그것에 대해 안좋아해서는 안됩니다. 즉, UINavigationController는 특정 UI를 전혀 부과하지 않는다고 생각합니다. 탐색 바를 숨기고 원하는 UI를 구현하는 것은 매우 쉽습니다. UINavigationController가 부과하는 것은 모듈 식 디자인입니다. 각보기는 별도의보기 컨트롤러로 관리되고 전체 화면을 차지합니다. 이 디자인이 앱에 적합한 경우에만 답변 할 수 있습니다. 그렇다면 앱이 뷰 계층 구조를 중심으로 설계된 경우 탐색 컨트롤러가 좋은 선택 일 수 있습니다.

+0

입력 해 주셔서 감사합니다. 매우 유용합니다. –

관련 문제