2009-09-14 3 views
0

동일한 오류가 발생하지만 속성이 .h 파일에서 올바르게 설정되었는지 확인했습니다.오류 : 구조체 또는 공용체가 아닌 someSizes 멤버에 대한 요청

코드는 다음과 같습니다. NSUInteger theSizesCount = [The.She.theSizes count];

오류가 발생했습니다 : 오류가 발생했습니다 : 멤버가 theSizes를 요청합니다.이 .m 파일은 .h 파일 6 개를 가져오고, 그 중 4 개 파일은 가져온 것과 동일한 속성을 갖지만 다양한 Super 클래스.이 .m 파일은 그 중 하나만 구현하고 있으며, 누구와 크기가 동기화되어 있습니까?

또한이 코드에서 theSizes 변수는 녹색이지만 변수는 없습니다. 또한 여러 번 오류가 발생합니다. NSUIntegers을위한 장소가있는 NSMutableArray 등

는 어디에서 잘못 갈거야? 헤더 파일 코드의 일부는 다음과 같습니다.


// TheSize.h 

@class TheWho; 

@interface TheSize : NSManagedObject 
{ 
} 

@property (nonatomic, retain) NSString *name; 
@property (nonatomic, retain) NSString *amount; 
@property (nonatomic, retain) TheWho *theWho; 
@property (nonatomic, retain) NSNumber *displayOrder; 

@end 

와 ..이

// 
// TheWho.h 
// 


@interface ImageToDataTransformer : NSValueTransformer { 
} 
@end 


@interface TheWho : NSManagedObject { 
} 

@property (nonatomic, retain) NSString *instructions; 
@property (nonatomic, retain) NSString *name; 
@property (nonatomic, retain) NSSet *theSize; 
@property (nonatomic, retain) UIImage *thumbnailImage; 

@property (nonatomic, retain) NSManagedObject *image; 
@property (nonatomic, retain) NSManagedObject *type; 

@end 


@interface TheWho (CoreDataGeneratedAccessors) 
- (void)addTheSizesObject:(NSManagedObject *)value; 
- (void)removeTheSizesObject:(NSManagedObject *)value; 
- (void)addTheSizes:(NSSet *)value; 
- (void)removeTheSizes:(NSSet *)value; 
@end 

답변

0

당신은 아직도 멤버 변수를 정의해야합니다. @property 지시어는 기본 멤버가 아니라 접근 자 메서드를 선언합니다.

@interface TheWho : NSManagedObject { 
    NSString *instructions; 
    NSString *name; 
    NSSet *theSize; 
    UIImage *thumbnailImage; 

    NSManagedObject *image; 
    NSManagedObject *type; 
} 
+0

거짓. iPhone의 런타임은 ivars를 합성합니다. 또한, 속성은 NSManagedObject 하위 클래스를 처리 할 때 동적입니다 (실수가 아니라면). – jbrennan

0

당신은 theWho.theSizes에 액세스하기 위해 노력하고 있지만 헤더 파일에 따라, 당신은 (후행들없이) theWho.theSize을 시도해야한다.

여기에 입력 한 내용이 오타가 아니라면 직접 복사되지 않았습니다.

+0

감사합니다. 나는 그것을 시도하고 이전보다 더 많은 오류가 발생했습니다. Core Data Recipes 샘플 코드를 가이드로 사용하고 있으며 변수 및 변수 + 학습 S를 모두 사용합니다. –

1

내 선언을 다시 확인하고 NSSet * theSize 항목에 "s"를 추가해야했습니다. 그 오류는 사라졌습니다. 모든 도움에 감사드립니다.