CoreData 기반 앱이 있습니다. Core Data에는 ZSProductionCD라는 NSManagedObject 하위 클래스를 만드는 ZSProduction이라는 엔티티가 있습니다. 이것은 생성 된 .h 파일입니다.iOS - X 유형의 객체에서 속성을 찾을 수 없습니다. - 상속 된 속성
#import <Foundation/Foundation.h>
#import <CoreData/CoreData.h>
@interface ZSProductionCD : NSManagedObject
@property (nonatomic, retain) NSNumber * appVersion;
@property (nonatomic, retain) id highlightColour;
@property (nonatomic, retain) NSDate * lastUpdated;
@property (nonatomic, retain) NSString * notes;
@property (nonatomic, retain) NSString * owner;
@property (nonatomic, retain) NSString * productionID;
@property (nonatomic, retain) NSString * productionName;
@property (nonatomic, retain) NSNumber * scenesLocked;
@property (nonatomic, retain) NSNumber * shotNumberingStyle;
@property (nonatomic, retain) NSNumber * sortIndex;
@property (nonatomic, retain) NSNumber * status;
@property (nonatomic, retain) NSString * tagline;
@end
그때라는 클래스 ZSProduction으로이 서브 클래스 : 서브 클래스에 대한
#import <Foundation/Foundation.h>
#import "ZSProductionCD.h"
@interface ZSProduction : ZSProductionCD
@end
이유는 내가 방법 & 가능성이 다른 속성의 무리를 추가 할 것입니다 것입니다. 이 방법으로 엔티티를 변경하면 ZSProduction으로 수행 한 작업에 영향을주지 않고 새로운 ZSProductionCD 클래스를 작성할 수 있습니다.
이제 문제가 있습니다. 뷰 컨트롤러에서 ZSProduction을 사용하고 있습니다. 하지만 속성 중 하나만 가지고 문제가 있습니다. 방법에, 그리고 나중에
#import "ZSProduction.h"
@interface [...]
@property (strong, nonatomic) ZSProduction *item;
@end
그리고 :
self.productionNameField.text = self.item.productionName;
self.shotNumStyleControl.selectedSegmentIndex = [self.item.shotNumberingStyle intValue];
을 그리고 잘못 곳이다이보기 컨트롤러에서
, 나는 속성을 선언합니다. 엑스 코드는 불평 :재산권 'shotNumberingStyle는'이 작품을 잘 productionName 속성에 대해 불평하지 않는 'ZSProduction *'
주 유형의 객체를 찾을 수 없습니다. 같은 뷰 컨트롤러에서
, 내가 사용하는 경우 :self.item.shotNumberingStyle = 0;
그럼 저도 같은 오류가 발생합니다. 하지만 내가 사용하는 경우 :
[self.item setValue:0 forKey:@"shotNumberingStyle"];
그럼 잘 작동합니다. 그럼에도 사용할 수 있습니다 :
self.item.highlightColour = [UIColor whiteColor];
전혀 문제가 없습니다. 뭐라 구요?
모든 단서는 인정 될 것입니다.