我的应用程序的每个 UIViewController 都在使用 UITextField 委托,例如:
- (void)textFieldDidBeginEditing:(UITextField*)textField {
self.responder = textField;
}
- (BOOL)textFieldShouldReturn:(UITextField*)textField {
double elementYPosition = self.responder.frame.origin.y;
double elementHeight = self.responder.frame.size.height;
double scrollYPosition = self.scrollView.contentOffset.y;
/* some logic */
}
现在我正在尝试创建一个基本视图控制器,所以我可以继承使用它,重用这些方法。基本视图控制器中的responder
属性工作得很好,因为 UITextField 委托设置了它的值,但是滚动视图是一个 IBOutlet,我不太确定如何设计这个基类:
#import "ViewControllerBase.h"
@interface ViewControllerBase ()
@property (weak, nonatomic) UIView* responder;
@property (weak, nonatomic) IBOutlet UIScrollView *scrollView; /* ??? */
@end
@implementation ViewControllerBase
-- methods
@end