サブクラス化したサブビューに textField があります。ここで、元のビューで textField のデリゲート メソッドを呼び出したいと思います。
このコードで試してみましたが、どういうわけかメソッドが呼び出されません:
NewImageViewController *ni = [[NewImageViewController alloc] init];
textField.delegate = ni;
「NewImageViewController」は私の元のビューです。
編集:
私の Subclass.h :
#import <UIKit/UIKit.h>
@protocol SubviewProtocol<NSObject>
- (void) textFieldDidEndEditing:(UITextField *)inTextField;
- (void) textFieldDidBeginEditing:(UITextField *)inTextField;
@end
@interface PopOverViewController : UIViewController <FPPopoverControllerDelegate>
@property (strong, nonatomic) UITextField *textField;
@property (nonatomic, assign) id<SubviewProtocol> delegate;
@end
Subview.m の viewDidLoad :
textField = [[UITextField alloc] initWithFrame:CGRectMake(5, 5, 170, 30)];
textField.placeholder = @"Example";
textField.backgroundColor = [UIColor whiteColor];
textField.alpha = 0.9;
textField.borderStyle = UITextBorderStyleLine;
textField.layer.borderColor = [[UIColor grayColor]CGColor];
textField.textColor = [UIColor blackColor];
textField.delegate = self;
[self.view addSubview:textField];
NewImageViewController.m のデリゲート メソッド:
-(void)textFieldDidBeginEditing:(UITextField *)textField {
NSLog(@"asd");
}
-(void)textFieldDidEndEditing:(UITextField *)textField {
NSLog(@"fgh");
}