2011-11-14 3 views
1

페이지 A에서 배열이 NSManagedObjects 인 경우 사용자가 셀을 선택하고 선택한 NSManagedObject에 대한 자세한 정보를 표시하기 위해 새 UIViewController로 이동합니다.Objective-C - 한 페이지에서 다른 페이지로 NSManagedObject 전달?

newViewController.myManagedObject = selectedManagedObject; 
[self.navigationController pushViewController:newViewController animated:YES]; 
[newViewController release]; 

일반적으로 NSObject의 소유자이기 때문에 전달할 개체의 속성을 할당하겠습니까? 소유자가 나 대신 Core-Data이기 때문에이 내용이 NSManagedObjects에 적용됩니까? 이 NSManagedObject의 속성은 retain 또는 assign이어야합니까?

답변

2

DetailViewController는 개체를 유지해야합니다.

하나 이상의 개체가 다른 개체의 소유자가 될 수 있습니다. 이미지는 가죽 끈의 소유자가되고 가죽 끈에 붙어있는 강아지의 소유자는 아닙니다. 많은 사람들이 개에 가죽 끈을 달 수 있으며 모든 사람들이 가죽 끈을 분리하자마자 개는 자유롭고 더 이상 소유자가 없습니다.

시나리오에서는 코어 데이터가 객체를 릴리스 할 수 있습니다 (끈이 분리되어 있음). 코드가 객체를 보유하고있는 경우 (끈이 연결되어있는 경우) 객체가 할당 취소되지 않습니다 (개가 도망 갈 수 없음).).

관련 문제