我有一个UITableViewController
类,我想在一段时间不活动后返回到根视图控制器。我假设不活动意味着在过去的X分钟内屏幕上的任何地方都没有发生任何活动(点击,触摸,拖动,滚动)。我尝试使用UITapGestureRecognizer
检测屏幕活动,但它不一致,有时会触发事件,有时不会。此外,它仅在显示屏上有实际“点击”时触发。我基本上想知道什么时候显示器检测到任何类型的手指活动。我怎样才能做到这一点?下面的代码是我如何实现手势识别器。
- (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");
}