그게 내가 가진 것입니다.
@interface Example : NSObject
@property (class) NSString *classProperty;
@end
그리고 클래스 속성에 액세스하려고 :
Class meta = objc_getMetaClass(class_getName([Example class]));
objc_property_t property = class_getProperty(meta, "classProperty"); // == nil
objc_property_t *properties = class_copyPropertyList(meta, NULL); // == nil
Xcode 8 및 iPhone 7 iOS 10 Simulator를 사용하고 있으며 Obj-C 런타임 기능으로 클래스 속성에 액세스하고 싶습니다.
여기에서 몇 가지 슬라이드를 읽었습니다. https://developer.apple.com/videos/play/wwdc2016/405/ 그리고 여기에서 몇 가지 정보를 읽었습니다. http://useyourloaf.com/blog/objective-c-class-properties/
또한 확인 #if __has_feature(objc_class_property)
되었으며 다음이 있습니다. Objective-C의 클래스 속성 가용성을 감지하는 매크로
최신 정보:
이상한 일이 일어납니다. 오늘이 코드는 잘 작동합니다. 어제 작동하는 순간이 있었지만 나중에는 그렇지 않았습니다.
업데이트 2 :
아래에서 내 대답을 읽으십시오.
Deployment Target
iOS 8 및 iOS 9 이상으로 설정할 때 완전히 다른 동작을 발견했습니다 . Objective-C 런타임 Deployment Target
은가 iOS 8로 설정 될 때 클래스 속성에 대한 정보가없고 , Deployment Target
가 iOS 9 이상으로 설정 될 때 필요한 모든 정보를 가지고 있습니다 . 그래서 제가 작업하고있는 프레임 워크는 iOS 9 이상이 될 것입니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다