我有一个包含两个TextField的子类UITableViewCell,我想知道如何从我的子类中使用scrollToRowAtIndexPath
?
我已经设置了UITextField委托我只是不知道如何将消息发送回原始的ViewController来操作UITableViewRow向上滚动键盘。
subclasscell.h
@interface CustomFinishingCell : UITableViewCell
subclasscell.m
cell.heightTextField.delegate = self;
cell.widthTextField.delegate = self;
callingclass.m
//cellForRow
cell.heightTextField.text = heightString;
//textFieldShouldBeginEditing, action scroller here...
所以我不确定如何从子类化单元类访问textfieldshouldbeginediting,这样我可以在按下UItextField时滚动键盘上方的tableviewcell。任何对此的帮助将不胜感激!
答案 0 :(得分:2)
在单元格中存储自定义数据以识别单元格,viewController可以使用它来查找单元格的indexPath。
为您的单元格创建一个协议,并让您的viewController实现它。
像
@protocol YourDelegate <NSObject>
- (void)textFieldGetResponderIn:(CustomFinishingCell *)cell ;
@end
当调用textfieldshouldbeginediting时,调用[delegate textFieldGetResponderIn:self];
你可以像这样实现你的细胞:
@protocol YourDelegate ;
@interface CustomFinishingCell : UITableViewCell
@property (nonatomic, assign) id<YourDelegate> delegate ;
@property (nonatomic, strong) id customeData ;
@end
@protocol YourDelegate <NSObject>
- (void)textFieldGetResponderIn:(CustomFinishingCell *)cell ;
@end