처음으로 상당히 복잡한 코코아 터치 뷰를 연결하면 부주의하게 이전 절차 패턴으로 빠져 나와이를 떨쳐 버리는 것처럼 느껴집니다 ... 완전히 인식하고 있지만 많은 코코아 (OO) 디자인 패턴 중 내가 그들을 두려워 할 수도 있습니다.복잡한 코코아 터치 뷰 컨트롤러 간소화
그런 관점에서 볼 때이 문제는 빠르게 관리하기 어려워지고 있으며 내가 잘못 접근하고 있는지 궁금해하고 있습니다. 뷰는 UIViewController의 하위 클래스로 관리됩니다. 뷰 자체에는 ± 10 개의 하위 뷰가 포함됩니다. 이 하위 뷰 중 일부는 안팎으로 "슬라이드"되고 하위 뷰 (컨트롤, 이미지 뷰 등)가 포함되어 있습니다.
너무 많은 세부 사항에 익숙하지 않으면 내 루트 뷰 컨트롤러의 touchesBegan/Moved/Ended 메소드에서 내 관리 코드의 대부분 (애니메이션을 포함하여 모두는 아니더라도)을 실행하고있는 것으로 나타났습니다. 그리고 관리의 혼란, & 부울 속성을 확인 설정.경우 (editingMode & panelAVisible) .... (editingMode & panelBVisible)는 ... 또는 * {(someArrayOfSubviews에 MyCustomView 뷰)에 대한} (viewFlipped)이 등, 등 ... UI를 부여한 경우 만약 이 앱의 경우 대부분의보기 (또는 그 내용)가 사용자가 터치하여 화면의 다른 부분으로 이동해야합니다.
내가 해결하려고하는 주요 문제는 다음과 같습니다. viewA가있는 경우 3 개의보기가 숨김 (애니메이션)으로 이동합니다 ... 또는 viewB가 눌러지면 viewC에 포함 된 모든 객체가 표시됩니다. 부정 등 ...
이것을 처리하기위한 영리한 (또는 초보적인) OO 접근 방식은 무엇입니까? 아마도 뷰가 포함 된 하위 뷰를 자체 미니보기 컨트롤러로 사용하게할까요? 나는 너무 많은 (어떤?) 예제를 찾을 수 없었지만 ...
아마도 내가 분명해야했습니다. 예, iPhone 용입니다. 그리고,이 subviews 전체 '콘텐츠로 가득 차있는 화면'되지 않습니다. 그것들은 어쩌면 1/6 화면의 '패널'일 것입니다. 터치하면 추가 컨트롤/UIView가 제공됩니다. 그래서 그들은 전체 UINavigationController를 merrit 생각하지 않습니다. – Meltemi
네비게이션 컨트롤러가 아마도 너에게 너무 많을 것이다. 그럼에도 하위 뷰용 별도의보기 컨트롤러를 만들 수 있습니다. – drvdijk