---
title: "Touches, presses, and gestures"
framework: uikit
role: collectionGroup
role_heading: API Collection
path: uikit/touches-presses-and-gestures
---

# Touches, presses, and gestures

Encapsulate your app’s event-handling logic in gesture recognizers so that you can reuse that code throughout your app.

## Overview

Overview If you build your apps using standard UIKit views and controls, UIKit automatically handles touch events (including Multitouch events) for you. However, if you use custom views to display your content, you must handle all touch events that occur in your views. There are two ways to handle touch events yourself. Use gesture recognizers to track the touches; see Handling UIKit gestures. Track the touches directly in your UIView subclass; see Handling touches in your view.

## Topics

### Essentials

- [Using responders and the responder chain to handle events](uikit/using-responders-and-the-responder-chain-to-handle-events.md)
- [UIResponder](uikit/uiresponder.md)
- [UIEvent](uikit/uievent.md)

### Touches

- [Handling touches in your view](uikit/handling-touches-in-your-view.md)
- [Handling input from Apple Pencil](uikit/handling-input-from-apple-pencil.md)
- [Tracking the force of 3D Touch events](uikit/tracking-the-force-of-3d-touch-events.md)
- [Illustrating the force, altitude, and azimuth properties of touch input](uikit/illustrating-the-force-altitude-and-azimuth-properties-of-touch-input.md)
- [Leveraging touch input for drawing apps](uikit/leveraging-touch-input-for-drawing-apps.md)
- [UITouch](uikit/uitouch.md)

### Button presses

- [UIPress](uikit/uipress.md)
- [UIPressesEvent](uikit/uipressesevent.md)

### Standard gestures

- [Handling UIKit gestures](uikit/handling-uikit-gestures.md)
- [Coordinating multiple gesture recognizers](uikit/coordinating-multiple-gesture-recognizers.md)
- [Adopting hover support for Apple Pencil](uikit/adopting-hover-support-for-apple-pencil.md)
- [Supporting gesture interaction in your apps](uikit/supporting-gesture-interaction-in-your-apps.md)
- [UIHoverGestureRecognizer](uikit/uihovergesturerecognizer.md)
- [UILongPressGestureRecognizer](uikit/uilongpressgesturerecognizer.md)
- [UIPanGestureRecognizer](uikit/uipangesturerecognizer.md)
- [UIPinchGestureRecognizer](uikit/uipinchgesturerecognizer.md)
- [UIRotationGestureRecognizer](uikit/uirotationgesturerecognizer.md)
- [UIScreenEdgePanGestureRecognizer](uikit/uiscreenedgepangesturerecognizer.md)
- [UISwipeGestureRecognizer](uikit/uiswipegesturerecognizer.md)
- [UITapGestureRecognizer](uikit/uitapgesturerecognizer.md)

### Custom gestures

- [Implementing a custom gesture recognizer](uikit/implementing-a-custom-gesture-recognizer.md)
- [UIGestureRecognizer](uikit/uigesturerecognizer.md)
- [UIGestureRecognizerDelegate](uikit/uigesturerecognizerdelegate.md)
- [Supporting gesture interaction in your apps](uikit/supporting-gesture-interaction-in-your-apps.md)

### 3D Touch interactions

- [UIPreviewInteraction](uikit/uipreviewinteraction.md)
- [UIPreviewInteractionDelegate](uikit/uipreviewinteractiondelegate.md)
- [UIPreviewActionItem](uikit/uipreviewactionitem.md)

## See Also

### User interactions

- [Menus and shortcuts](uikit/menus-and-shortcuts.md)
- [Drag and drop](uikit/drag-and-drop.md)
- [Pointer interactions](uikit/pointer-interactions.md)
- [Apple Pencil interactions](uikit/apple-pencil-interactions.md)
- [Focus-based navigation](uikit/focus-based-navigation.md)
- [Accessibility for UIKit](uikit/accessibility-for-uikit.md)
