注:このコードは元のコードを正確に複製したものではありませんが、問題の内容とコードに対する私の意図を (正確に) 示しています。
DaClass1
のビューにボタンを追加しました(これは正常に動作します):
%hook DaClass1
-(id)DaView {
UIButton *xButton = [UIButton buttonWithType:UIButtonTypeCustom];
[xButton addTarget:self action:@selector(dismissWithAnimation:YES:nil)
forControlEvents:UIControlEventTouchUpInside];
[xButton setBackgroundImage:[UIImage imageWithContentsOfFile:@"/Hello.png"] forState:UIControlStateNormal];
xButton.frame = CGRectMake(0, 0, 30, 30);
[self addSubview:xButton];
return %orig;
}
%end
しかし、( ) は実際には別のクラスのものですUIButton
。action:
dismissWithAnimation:YES:nil
%hook DaClass2
-(void)dismissWithAnimation:(int) reason:(int) {
//someCodeHere...
}
%end
UIButton が にあるときに、自分のから呼び出すdismissWithAnimation
にはどうすればよいですか?DaClass2
UIButton
action:
DaClass1