Tracking the Force of 3D Touch Events

Panther·2021년 8월 1일
0

https://developer.apple.com/documentation/uikit/touches_presses_and_gestures/tracking_the_force_of_3d_touch_events

"Manipulate your content based on the force of touches."

터치의 압력에 기반해 컨텐트를 조작합니다.

Overview

스크린에 대한 터치는 해당 터치의 위치를 전달합니다. 그러나 3D 터치를 지원하는 기기는 스크린에서 사용자의 손가락으로 전달되는 압력의 크기 또한 알려줍니다. (유사하게 애플 펜슬은 연결된 기기에 압력의 크기를 전달합니다.) 앱에 대한 입력으로 터치 위치와 압력 값 모두를 사용할 수 있습니다. 예를 들어 드로잉 앱은 현재 선의 두께를 설정하기 위해 압력을 사용할 것입니다.

Figure 1 Using force as input

터치에 관련된 가공되지 않은 압력 값은 UITouch 객체의 압력 속성에서 사용이 가능합니다. 압력의 상대적 크기를 결정하기 위해 해당 값과 maximumPossibleForce 속성에서의 값을 비교할 수 있습니다.

Important
앱이 peek-and-pop 지원을 구현하고 있다면, 앱에서 가공되지 않은 압력 값을 사용하지 않아야 합니다. UIKit peek-and-pop API를 지원하기 위해 3D 터치를 사용하는 것에 대한 정보는 Adopting 3D Touch on iPhone을 살펴보시기 바랍니다.

Adopting 3D Touch on iPhone
https://developer.apple.com/library/archive/documentation/UserExperience/Conceptual/Adopting3DTouchOniPhone/index.html#//apple_ref/doc/uid/TP40016543

3D 터치 사용에 대한 가이드는 iOS Human Interface Guide를 살펴보시기 바랍니다.

iOS Human Interface Guide
https://developer.apple.com/design/human-interface-guidelines/ios/overview/themes/

Topics


Checking the Availability of 3D Touch

기능을 사용할 수 있도록 하기 전에 기기가 3D 터치를 지원하는지 여부를 확인합니다.

https://developer.apple.com/documentation/uikit/touches_presses_and_gestures/tracking_the_force_of_3d_touch_events/checking_the_availability_of_3d_touch
https://velog.io/@panther222128/Checking-the-Availability-of-3D-Touch


See Also

Touches

Handling Touches in Your View

뷰의 컨텐트에 터치 처리가 복잡하게 연결되어 있는 경우 뷰 서브클래스에서 직접 터치 이벤트를 사용합니다.

https://developer.apple.com/documentation/uikit/touches_presses_and_gestures/handling_touches_in_your_view
https://velog.io/@panther222128/Handling-Touches-in-Your-View

Handling Input from Apple Pencil

애플 펜슬로부터 발생한 터치를 감지하고 이에 응답하는 방법을 알아봅니다.

https://developer.apple.com/documentation/uikit/pencil_interactions/handling_input_from_apple_pencil
https://velog.io/@panther222128/Handling-Input-from-Apple-Pencil

UITouch

화면에서 발생하는 터치의 위치, 크기, 움직음, 압력을 나타내는 객체입니다.

https://developer.apple.com/documentation/uikit/uitouch
https://velog.io/@panther222128/UITouch


0개의 댓글