2017-10-27 8 views
0

다른 navigationBars을 포함하는 앱을 개발 중입니다.다른 화면에 사용자 정의 탐색 모음 사용?

  • 제목 & 뒤로 버튼
  • 제목, 왼쪽 버튼 & 오른쪽 버튼 배지 카운트 알림 아이콘
  • 제목
  • 배지 카운트 카트 아이콘 제목이의 생각에서

다른 접근 방법 :

  1. programmatically이 (통지 & 카드 배지 아이콘의 애니메이션이 애니메이션을하기 어려울 수?) 기본 컨트롤러에서 탐색을 만들기
  2. 탐색에 하위 뷰로 추가 할 수있는 사용자 정의 xibView를 만듭니다 (의 동작을 감지하기 어렵다 수 버튼?)

이 동작을 구현하는 더 좋은 방법은 무엇입니까?

답변

1

기본 접근 방식은 내비게이션 막대를 관리하는 네비게이션 컨트롤러 인 입니다.

네비게이션 바와 직접 상호 작용하지 않거나 분리 된 네비게이션 바를 사용하면 UINavigationController이 무료로 처리하는 레이아웃 문제와 관련하여 많은 골칫거리가 생길 것입니다.

각 화면에 표시되는 단추를 변경하려면 각보기 컨트롤러의 navigationItem 속성 (해당 leftBarButtonItem, rightBarButtonItem 등)을 수정합니다.

It'sallinthedocs.

0

맞춤 xib를 만드는 것이 좋습니다. 액션 처리 : 핸들러를 사용자 정의 클래스 자체에두면 프로토콜을 정의하고이를 사용하여 액션 이벤트를 해당 프로토콜을 준수하는 모든 클래스에 전달할 수 있습니다. 델리게이트와 함께하는 이유는 많은 컨트롤러가 이벤트를 받고 (알림 사용), 현재 해당 델리게이트를 준수하는 클래스 하나만 필요하기 때문입니다.

+0

하지만이 경우 탐색 막대가있는 모든 컨트롤러에 프로토콜을 구현해야합니다. 예를 들어. 대부분 컨트롤러에는 뒤로 버튼과 제목 만 있으므로 왼쪽 & 오른쪽 버튼이있는 컨트롤러에 대한 프로토콜을 만들 수 있습니다. – Techiee

+0

중요한 문제로, 프로토콜 메서드에 대한 기본 구현을 가질 수 없다는 것을 알지 못합니다. 그렇게하면 각보기 컨트롤러에서 구현하지 않아도됩니다. –