UITapGestureRecognizer
//单击
UITapGestureRecognizer *singleTapOne = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleSingleTap:)];
singleTapOne.numberOfTouchesRequired = 1;
singleTapOne.numberOfTapsRequired = 1;
//双击
UITapGestureRecognizer *doubleTapOne = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleDoubleTap:)];
doubleTapOne.numberOfTouchesRequired = 1;
doubleTapOne.numberOfTapsRequired = 2;
//很重要,这样双击就不会触发单击事件
[singleTapOne requireGestureRecognizerToFail:doubleTapOne];
[self.mapView addGestureRecognizer:singleTapOne];
[singleTapOne release];
[self.mapView addGestureRecognizer:doubleTapOne];
[doubleTapOne release];