同様の質問をすべて検索しましたが、答えが見つかりませんでした。私はこれに完全に困惑しています... UIImageViewを拡張するクラスがあります。だからここに私の.hファイルがあります:
@interface Paper : UIImageView {
@public
CGFloat drag;
}
@property (nonatomic, assign) CGFloat drag;
@end
私はdrag
自分の実装で適切に合成しています。
ここで、ViewController で次のように Paper オブジェクトを作成して初期化します。
NSString *tempPath = [[NSBundle mainBundle] pathForResource:@"picture" ofType:@"png"];
UIImage *tempImage = [[UIImage alloc] initWithContentsOfFile:tempPath];
Paper *tempPaper = [[UIImageView alloc] initWithImage: tempImage];
オブジェクトは正しく作成され、後でそれをサブビューなどとして表示できますが、上記の直後に次のような行を使用してカスタム プロパティを変更しようとすると、次のようになります。
tempPaper.drag = 1.0;
また
[tempPaper setDrag:1.0];
私[UIImageView setDrag:]: unrecognized selector sent to instance
はエラーとして取得します。見つけたさまざまな方法をすべて試しましたが、Paper クラスのカスタム プロパティ (UIImageView 以外のもの) の値を設定することはできません。私が見逃しているのは何ですか?これに 2 時間費やしましたが、頭がおかしくなりました。何が問題なのかわかりません。
drag
PaperのinitWithImage
方法で 初期化も試みましたが、うまくいきません。