Core Data로 작업하기 시작했고 일반적인 Cocoa 응용 프로그램에서 사용하는 방법을 알아 냈지만 Cocoa Touch에서 조금 다르게 작동합니다. Cocoa Touch의 테이블 셀과 같은 객체에 엔티티를 어떻게 바인딩합니까?NSArrayController와 동일한 코코아 터치 란 무엇입니까?
5
A
답변
4
iPhone OS 3.0 이상에서 CoreData를 사용하는 경우 NSFetchedResultsController
을 확인하십시오. 실제로는 NSArrayController
의 아날로그는 아니지만, UITableView
및 컨트롤러와 함께 사용하도록 특별히 설계되었습니다.
이것은 장치의 성능 및 메모리 제약 조건을 염두에두고 필요에 따라 지속성에서 요소를로드하는 방법을 제공합니다. 간단하게 묶는 것만 큼 깨끗하지는 않지만, 소량의 코드로 필요한 모든 것을 (그리고 더!) 할 것입니다.
6
1
Jergason이 정확합니다. iPhone에서 코어 데이터가있는 바인딩 또는 NSArrayController를 사용할 수 없습니다.
대신 "UITableView 개체에 대한 데이터를 제공하기 위해 핵심 데이터 가져 오기 요청에서 반환 된 결과를 효율적으로 관리하기위한 것입니다"라는 체크 아웃 NSFetchedResultsController을 확인하십시오.
'NSFetchedResultsController'가 보이지 않습니다. 'UITableViewController'가 보입니다. 그들은 유사합니까? 어쨌든 컨트롤러에 배열 데이터를 공급하는 방법을 알아 내는데 어려움을 겪고 있습니다. 몇 가지 환경적인 차이점에 대해 포인터를 보내 주셔서 감사합니다! – Kaji
NSFetchedResultsController는 다음에서 찾을 수 있습니다 : http://developer.apple.com/iphone/library/documentation/CoreData/Reference/NSFetchedResultsController%5FClass/Reference/Reference.html – jbrennan
NSFetchedResultsController는 기본적으로' UITableView' 및'UITableViewController'를 호출합니다. CoreData 객체와 함께 작동하고 테이블에 표시 할 수 있도록 준비하는 모델 클래스입니다. – jbrennan