문제

나는 내가 생각한 것이 매우 단순한 요구라고 생각했지만 그것을 구현하는 방법을 잘 모르겠습니다.

내 인터페이스의 다양한 지점에서, 사용자는 오히려 시각적 인 것을 선택하도록 요청받습니다 (페이지 또는 색상 옵션을위한 레이아웃을 선택하는 것과 같이)이 선택은 사전 정의 된 옵션 세트로 만들어집니다. 일반적으로 nspopupbutton 또는 nstableview를 사용하지만 사용자가 각 선택 옵션의 축소판을 볼 수 있기를 바랍니다. 이 썸네일은 적어도 100x100 픽셀의 괜찮은 크기가되어야합니다. 각 썸네일에는 텍스트 레이블도 동반해야합니다. 한 번에 하나의 선택 만 허용됩니다.

Apple은 iWeb에서 이와 같은 것을 구현합니다.

iweb http://img187.imageshack.us/img187/5744/iweb.jpg

물론, 당신은 작은 아이콘으로 이와 같은 것을 보는 데 익숙합니다.

xcode

나는 nscollectionView가 시작하기위한 장소라고 생각하지만, 훨씬 더 복잡한 시나리오에서 사용 된 것을 본 적이 있습니다 (예 : 디렉토리의 내용 표시, 드래그 앤 드롭 등). 내가 찾은 코드는 다소 복잡합니다.

이보기를 정적, 사전 정의 된 데이터로 채우고 간단한 선택 만 허용하는 간단한 솔루션이 있습니까? 다시 말해, 팝업 버튼의 기능이 있지만 다른 사용자 인터페이스의 기능을 찾고 있습니다.

업데이트 : 솔루션

제안 된대로 ikimagebrowser를 사용했습니다. 이 튜토리얼 매우 도움이되었습니다. IB에서 : 방금 인터페이스에 ikimagebrowser를 만들어 스크롤보기로 싸서 브라우저 개체의 데이터 소스로 만들었습니다. 코드 : 튜토리얼에 설명 된 것처럼 내 컨트롤러에서 데이터 소스 프로토콜을 구현했습니다. set alline -multipleSeelection 및 enliceiptySelection은 튜토리얼에 설명 된대로 URL 이미지 표현을 사용하여 사용자 정의 이미지 객체를 만들었습니다.

그런 다음 선택을 받으려면 사용자가 "확인"버튼을 클릭 할 때 트리거 할 방법을 작성했습니다.

NSIndexSet *retval = [imageBrowser selectionIndexes];
NSInteger i = [retval firstIndex];  //the index of the selection. Corresponds to index in my array data source
NSString* path = [[styleViewData objectAtIndex:i] imageRepresentation]; //path to selected image, if you need it

튜토리얼은 매우 유용합니다. 이미지와 줌 슬라이더 등을 추가하는 것에 대한 내용을 무시합니다.

도움이 되었습니까?

해결책

당신은 ikimagebrowserview를 원합니다.

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