Я подклассифицировал UITableView (как KRTableView) и реализовал четыре сенсорных метода (touchsBegan, touchsEnded, touchhesMoved и touchsCancelled), чтобы я мог обнаружить, когда обрабатывается сенсорное событие в UITableView. По сути, мне нужно обнаружить, когда UITableView прокручивается вверх или вниз.
Однако подклассификация UITableView и создание указанных выше методов обнаруживает только при прокрутке или перемещении пальцев в UITableViewCell, а не во всем UITableView.
Как только мой палец перемещается в следующую ячейку, события касания ничего не делают.
Вот как я подклассифицирую UITableView:
#import "KRTableView.h"
@implementation KRTableView
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
[super touchesBegan:touches withEvent:event];
NSLog(@"touches began...");
}
- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event {
[super touchesMoved:touches withEvent:event];
NSLog(@"touchesMoved occured");
}
- (void)touchesCancelled:(NSSet*)touches withEvent:(UIEvent *)event {
[super touchesCancelled:touches withEvent:event];
NSLog(@"touchesCancelled occured");
}
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event {
[super touchesEnded:touches withEvent:event];
NSLog(@"A tap was detected on KRTableView");
}
@end
Как я могу определить, когда UITableView прокручивается вверх или вниз?