私のクラスをプロジェクトのプロパティとして使用したいと思います。アイデアは、私はすべてのリスト要素を含むクラスを持っているということです。私は基本的なアイデアをグラフの下に示します: 私はmyContainerClassオブジェクトを持っています、そして、私は他のいくつかのクラスでしたい: @property(強い、非原子的)MyContainerClass * obj; ここに私はエラーがある!私は@propertyとしてFoundationsの型だけを使うことができると思います。しかし、なぜ?それを行うための置き換えは何ですか(オブジェクトを渡す)?プロパティとしてのNSObjectサブクラス
0
A
答えて
2
いいえ、あなたは
@property (nonatomic, strong) MyContainerClass* obj;
コンパイラはMyContainerClass
がクラスであることを知っていることを完全に合法的に提供されるプロパティとしてあなたが好きなクラスを使用することができます。
@class MyContainerClass;
@interface SomeOtherClass : NSObject
// method an property declarations
@property (nonatomic, strong) MyContainerClass* obj;
@end
そして、実装におけるヘッダファイルが含ま:
#import "MyContainerClass.h"
@implementation SomeOtherClass
@synthesize obj;
// other stuff
@end
+0
ああ、(クラス)...愚かな私!ありがとうございました! – Kuba
0
あなたがあなたの財産を追加するオブジェクトのカテゴリ宣言します。そして、Objective Cの関連するオブジェクトのトリックを使用してsetterメソッドとgetterメソッドを実装
@interface NSObject (MyContainerClassAdditions)
@property (nonatomic, strong) MyContainerClass *myContainerClass
@end
を:
#import <objc/runtime.h>
@implementation NSObject (MyContainerClassAdditions)
- (void)setMyContainerClass:(MyContainerClass *)myContainerClass {
objc_setAssociatedObject(self, "myContainerClass", myContainerClass, OBJC_ASSOCIATION_ASSIGN);
}
- (MyContainerClass *)myContainerClass {
return objc_getAssociatedObject(self, "myContainerClass");
}
@end
1
は何ですかあなたが得ているエラー? MyContainerClassを使用する場所にインポートしていない可能性があります。
#import "MyContainerClass.h"
関連する問題
- 1. NSObjectサブクラスの開始
- 2. 新しいNSManagedObjectサブクラスと新しいNSObjectサブクラス?
- 3. IOSobのファイル所有者としてのNSObjectサブクラス
- 4. objective-c NSobjectサブクラスを使用したスレッディング
- 5. MKMapViewは、NSObjectのプロパティ
- 6. NSObjectプロパティの使い方
- 7. NSObjectをサブクラス化するときのエラー: "EXC_BAD_ACCESS"
- 8. NSXMLParser NSObjectの中サブクラスの切り替えのスレッド
- 9. Persist UITableViewCellサブクラスのプロパティ
- 10. クラスとそのサブクラスのプロパティのみ
- 11. NSObjectサブクラスでPFUserカレントユーザが利用できない
- 12. Objective-C - NSObjectサブクラスからUIViewControllerにデータを送信する
- 13. Swift 3:NSObjectをサブクラス化するかどうか
- 14. NSObjectのカテゴリは、このカテゴリの.hファイルをインポートしなくても、すべてのNSObjectサブクラスで使用できます。
- 15. iOS - サブクラスの新しいプロパティへのアクセス
- 16. サブクラスUIViewControllerまたはビューがフルスクリーンでないときにカスタムNSObjectを作成
- 17. NSObjectのインスタンスとは
- 18. UIButtonサブクラス - プロパティの設定?
- 19. NSObject ModalViewとデリゲート
- 20. NSProxyとNSObject
- 21. UIViewControllerとそのすべてのサブクラスにプロパティを追加する
- 22. CLLocationManagerは常にnullです - デリゲートの実装はシングルトンクラスです(UIViewControllerのサブクラスの代わりにNSObjectのサブクラス)
- 23. Realmオブジェクトのサブクラスのプロパティにアクセスできないサブクラス
- 24. XAMLでキャストしてサブクラスのプロパティにアクセスする方法
- 25. オブジェクトとNSObjectの違い
- 26. NSObjectの小さなサブクラスを置く場所は、.hファイルですか?
- 27. .net、サブクラスとしてキャストクラス
- 28. Swift 2.0 NSObjectサブクラスを含むときに期待通りに動作しません。
- 29. JSQMessagesをサブクラス化してmessageIDプロパティを追加する
- 30. Swiftの拡張プロパティ競合サブクラス宣言
表示MyContainerClassためのコードと正確なエラーをヘッダファイルで、最良の方法は、
@class
前方宣言を使用することを行うために、メッセージ。 – borrrdenMyContainerクラス.mと.hファイルのコードをここに投稿してください –