본문 바로가기
  • SDXL 1.0 + 한복 LoRA
  • SDXL 1.0 + 한복 LoRA
Development/iPhone

[옛 글] [APIs] NSSortDescriptor

by 마즈다 2013. 7. 12.
반응형

최초 작성일 : 2010/04/10 21:39 


NSSortDescriptor Class

NSSortDescriptor 인스턴스는 객체들을 비교하는데 사용하기 위한 속성들과

그 속성들을 비교하는데 사용하기 위한 메서드, 그리고 그 비교를 통해 오름차순이 되어야 하는지

내림차순이 되어야 하는지를 명시하여 객체들의 정렬을 위한 기준을 정의한다.

NSSortDescriptor의 인스턴스는 불변성을 가지고 있다.


여러분은 정렬 순서(오름차순 또는 내림차순)와 비교를 수행할 selector(선택적으로 지정 가능)와 같은

비교될 속성들의 키를 명시함으로써 NSSortDescriptor의 인스턴스를 생성할 수 있다.

인자가 3개인 생성자의 경우 caseInsensitiveCompare:나 localizedCompare:와 같은

비교 selector를 명시할 수 있다. 만일 정렬되어야 하는 객체들로부터 sort descriptor의 비교 selector로

응답이 없을 경우에는 예외가 발생하게 된다.


 주의 : 많은 NSSortDescriptor의 메서드들에 대한 설명을 보면 "property key"를 언급하고 있다.

간단하게 말하면 property key는 객체의 attribute나 관계를 나타내는 속성에 대한 id 역할을 하는 문자열(키)를

말하는 것이다. 여러분은 Cocoa Fundamentals Guide 와 Key-Value Coding Programming Guide

있는 "Object Modeling"을 통해 이 용어에 대한 논의 사항을 확인할 수 있을 것이다.


sort discriptors를 사용하게 되는 상황은 여러가지가 있는데 예를들면


- 배열을 정렬할 때 (배열은 NSArray나 NSMutableArray의 인스턴스이며

  sortedArrayUsingDescriptors:나 sortUsingDescriptors:를 보면 된다)

- 두 개의 객체를 직접 비교할 경우(compareObject:toObject를 보라)

- 테이블 뷰의 요소들이 어떻게 정렬되어야 하는지 명시하고자 할 경우

   (sortDiscriptors를 보라)

- 배열 컨트롤러에 의해 관리되는 요소들이 어떻게 정렬되어야 하는지

   명시하고자 할 경우(sortDiscriptors를 보라)

- 호출되는 요청으로부터 반환된 객체들의 정렬순서를 명시하기 위해 코어 데이터를

   사용하고자 할 경우(sortDiscriptors를 보라)


[원문] iPhone Dev Center : NSSortDescriptor Class Reference

반응형