Because UIGestureRecognizer.delegate is assign instead of weak, I must nil it in dealloc to avoid delegate calls to deallocated object.