2014-02-28 2 views
0

OS X 용 앱을 작성했습니다. 각 슬라이더에는 눈금과 NSTextField 바로 위에 레이블이있는 세로 슬라이더가 몇 개 있습니다. 레이블을 프로그래밍 방식으로 배치하여 줄을 정렬해야합니다. 따라서 모든 슬라이더에 대해 그렇게하기보다는 클래스를 작성하는 것이 현명하다고 생각한 다음 해당 클래스의 인스턴스를 4 ~ 5 개만 만들면 각 슬라이더의 UI가 설정됩니다. 이것이 가능한가? 나는 어디서부터 시작해야하는지 모른다.코코아에서 다중 인터페이스 객체를 생성하는 클래스 작성하기

답변

0

귀하의 사례는 귀하의 설명에서 약간 분명하지 않습니다. 더 자세한 정보와 스크린 샷을 제공 할 수 있다면 좋을 것입니다.

클래스를 작성하고 인스턴스를 만드는 방법을 언급했습니다. 당신은 자신에게 물어야합니다, 그 계급의 개념적 중요성은 무엇입니까? 사실, 컨트롤을 배치하기 위해 각 그룹에 대한 클래스를 만드는 방법을 배우지 않을 것입니다. 당신이 필요로 할 때마다 그런 다음, 그 메소드를 호출 할 수 있습니다

- (void)placeNewControlGroup 
{ 
    // do the placement 
    // set up bindings 
    // rig actions etc. 
} 

의 새 그룹을 만들 :이 경우, 컨트롤러에서 간단한 방법 (또는 다른)까지 위치와 장비 당신의 컨트롤을 인스턴스화하기에 충분합니다 컨트롤 (예 : 슬라이더, 라벨 등).

또는 Cocoa가 콜렉션을 처리하기 위해 제공하는 표준보기 중 일부를 사용할 수 있습니다. 예를 들어 NSCollectionView 또는보기 기반 NSTableView입니다. 좋은 비디오 튜토리얼은 here입니다.

예를 들어 NSCollectionView을 만들고 콘텐츠 (즉, 세로 슬라이더)에 맞게 크기를 조정하면 해결책이 될 수 있습니다. this question에서는 회전 된 NSTableView도 제안되어 좋지 않을 수 있습니다.

+0

클래스가 아닌 메소드를 사용하는 것이 옳습니다. 그게 내 마음을 미끄러 져. NSCollectionView를 확인해보고 도움이되는지 확인하겠습니다. – nonex

관련 문제