以下:直接転写自己が現実的ではありません。
#import <UIKit/UIKit.h>
@interface XMPickDataView : UIView
+(void) onClick;
@end
@interface XMPickDataView()
@end
@implementation XMPickDataView
+(void) onClick{
UIButton *btn = [[UIButton alloc] initWithFrame:CGRectMake(0, 0, 200, 100)];
[btn addTarget:self action:@selector(add) forControlEvents:UIControlEventTouchUpInside];
}
-(void) add{
NSLog(@"add:");
}
@end
解決策:他のクラスと結合するこの方法は、このメソッド内で彼のクラスはあなたでない場合ので、私たちが必要とするこの時、あなたは独自のを初期化するために、このメソッドを呼び出したとき、あなたはクラスの別のインスタンスを使用する時には、仕事をしません。あなたの方法は、クラス定義では、メソッドを見つけることができません、不適切なオブジェクトは文句を言うでしょう合格することを余儀なくされています
#import <UIKit/UIKit.h>
@interface XMPickDataView : UIView
+(void) onClick;
@end
@interface XMPickDataView()
@end
@implementation XMPickDataView
+(void) onClick{
XMPickDataView *custom = [[XMPickDataView alloc] initWithFrame:CGRectMake(0,-10,10,10)];
[[UIApplication sharedApplication].keyWindow addSubview:custom];
UIButton *btn = [[UIButton alloc] initWithFrame:CGRectMake(0, 0, 200, 100)];
[btn addTarget:custom action:@selector(add) forControlEvents:UIControlEventTouchUpInside];
}
-(void) add{
NSLog(@"add:");
}
@end