문제

사용자가 행을 두 번 클릭 할 때 '세부 사항보기'를 원합니다. NSViewController에 데이터를 가져 오는 방법은 확실하지 않으므로 컨텐츠를 표시 할 수 있습니다. 나는 Coredata를 사용하고 있으며 이것을 할 방법을 생각할 수 없습니다.

도움이 되었습니까?

해결책

여기에는 몇 가지 단계가 필요합니다.

  1. 테이블보기가 a NSArrayController 테이블 뷰 (창 컨트롤러 또는 뷰 컨트롤러 등)의 컨트롤러가 NSArrayController IVAR에 묶여 액세스 할 수 있습니다.

  2. 테이블 컨트롤러에서 Double Click 작업을 컨트롤러의 메소드로 설정하고 대상을 컨트롤러로 설정합니다.

  3. 더블 클릭 메소드에서는 요청하여 행에 액세스 할 수 있습니다. -selectedObjects ~로부터 NSArrayController 그리고 그 결과 NSArray 하나의 요소 만 있어야합니다.

거기에서 당신은 당신의 세부 뷰 또는 당신이하고 싶은 다른 것을 만들 수 있습니다. 시트를 만들고 표시하고 모달 창을 열 수 있습니다.

다른 팁

코코아 바인딩.
애플은 훌륭합니다 마스터-디테일 인터페이스 생성에 대한 튜토리얼S 온라인.
Xcode 3.2를 사용하는 경우 스크린 샷이 약간 구식이지만 다르지 않습니다.

NSViewController는 a 대표 현재 표시중인 모델 객체에 바인딩 할 수있는 속성.

편집하다:확인. 내 대답은 진실의 절반에 불과하기 때문에 그렇게 크지 않습니다.
디테일 뷰 내에서 컨트롤을 바인딩하는 방법을 보여 주지만 배열 컨트롤러의 선택을 View Controller의 바인딩하는 방법에 대한 솔루션을 제공하지 않습니다. representedObject.
이 문제에 대한 바인딩 전용 솔루션에 관심이 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top