2013-02-08 2 views
6

NSCollectionView이라는 매우 기본적인 설정이 있습니다. 서브 클래 싱 된 NSCollectionViewItem이 컬렉션보기에 itemPrototype으로 사용됩니다. 컬렉션보기 항목에는보기가 있습니다.NSCollectionViewItem 뷰의 서브 뷰는 항상 nil입니다.

Interface Builder를 사용하여 컬렉션보기 항목의보기에 NSImageView을 추가하고 IBOutlet을 내 컬렉션보기 항목 하위 클래스의 인스턴스에 연결했습니다. IBOutlet의 속성은 메모리 관리를 위해 retain을 사용합니다.

내 목표는 컬렉션보기 항목의 선택 상태가 변경 될 때마다이 이미지보기를 숨기거나 표시하는 것입니다. 그러나 setSelected: 메서드 내에서 이미지보기에 대한 내 속성이 100 %로 콘센트가 연결되어 있어도 해당 속성이 유지되도록 설정되어 있고 이미지보기를 해제하거나 해제하지 않은 경우에도 nil입니다.

보기에 추가 된 활동 표시기가 항상 nil 인 컬렉션보기 항목에서도 비슷한 문제가있었습니다. 왜 이런 일이 일어나고 그것을 해결하기 위해 무엇을해야합니까?

답변

0

지금까지는 nib/xib 파일의 최상위가 아닌 객체를 가리키는 IBOutlet을 정의해야합니다 (weak).

NSCollectionView 항목의 클래스를 바꿨습니까?

setSelected :를 깨고 디버거 콘솔에서 po 자체를 수행 할 때 클래스 이름이 보이십니까?

관련 문제