我有一个UITableViewController
类,我想在一段时间不活动后返回根视图控制器。我假设不活动意味着在过去 X 分钟内屏幕上的任何地方都没有发生任何活动(点击、触摸、拖动、滚动)。我尝试使用 aUITapGestureRecognizer
来检测屏幕活动,但它并不一致,有时会触发事件,有时不会。此外,它仅在显示屏上有实际“点击”时才会触发。我基本上想知道显示器何时检测到任何类型的手指活动。我怎样才能做到这一点?下面的代码是我实现手势识别器的方式。
- (void)viewDidLoad
{
[super viewDidLoad];
NSLog(@"viewdidLoad");
mItems = [[NSArray alloc] initWithObjects:@"foo", @"bar", @"baz", @"bin", @"boo", nil];
// watch for touches anywhere to reset main menu timeout
UITapGestureRecognizer *tr = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapperEvent:) ];
[self.tableView addGestureRecognizer:tr];
}
...
- (void) tapperEvent:(UITapGestureRecognizer *)tapper
{
NSLog(@"tap event fired");
}