从父类访问自定义UIView类委托方法

时间:2015-06-08 07:09:21

标签: ios objective-c uitextfield protocols uitextfielddelegate

我有一个班级名称AccountRecoveryViewController。在UITableView的{​​custom 1} AccountRecoveryExpandedCell方法- (void)awakeFromNib中,我只需添加名为customView的{​​{1}}。并设置所有必要的参数。

像这样:

RIPasscodeView

- (void)awakeFromNib { RIPasscodeView *passcodeView = [[RIPasscodeView alloc] initWithFrame:CGRectMake (32, 144, 278, 35)]; passcodeView.innerSpaceValue = 20; passcodeView.placeHolder = @"-"; passcodeView.borderColor = [UIColor colorWithRed:250.0f/255.0f green:110.0f/255.0f blue:40.0f/255.0f alpha:1.0f]; passcodeView.delegate = self; [self addSubview:passcodeView]; } 我设置了RIPasscodeView委托方法(UITextFieldstextFieldShouldReturn),这样就可以了。

但现在我想从我的shouldChangeCharactersInRange访问这些UITextFields委托方法。因为我必须通过点击手势更改AccountRecoveryViewController(稍微改变一下)的位置,但是tableview类{}不会在此UITextFields类中使用{。}}委托方法。

我该怎么做?如果任何人有任何建议或疑问,请敲我。

提前多多感谢。

1 个答案:

答案 0 :(得分:1)

您有几种方法可以做到这一点。

  1. 创建您自己的协议,并处理从RIPasscodeViewAccountRecoveryViewController内部的操作。
  2. 通过传递父控制器引用将UITextField委托分配给父控制器。
  3. 使用KVO
  4. 使用NSNotificationCentre通知您的父控制器。
  5. 干杯。