Windows app 사용자 상호 작용은 입력 및 출력 원본(예: 마우스, 키보드, 펜, 터치, 터치 패드, 음성 등)과 확장된 환경을 가능하게 하는 다양한 모드 또는 한정자(마우스 휠 및 단추, 펜 지우개 및 배럴 단추, 터치 키보드 및 백그라운드 앱 서비스 포함)의 조합입니다.
Windows는 대부분의 경우 앱에서 받은 고유한 유형의 입력을 개별적으로 처리할 필요가 없는 "스마트" 상황별 상호 작용 시스템을 사용합니다. 여기에는 터치, 터치 패드, 마우스 및 펜 입력을 일반 포인터 유형으로 처리하여 탭 또는 길게 누르기, 이동용 슬라이드와 같은 조작 제스처 또는 디지털 잉크 렌더링과 같은 정적 제스처를 지원하는 것이 포함됩니다.
특정 폼 팩터와 쌍을 이루는 경우 각 입력 디바이스 유형 및 해당 동작, 기능 및 제한 사항에 대해 숙지합니다. 이렇게 하면 플랫폼 컨트롤 및 어도던스가 앱에 충분한지 또는 사용자 지정된 상호 작용 환경을 제공해야 하는지 여부를 결정할 수 있습니다.
음성은 사람들이 애플리케이션과 상호 작용하는 효과적이고 자연스러운 방법입니다. 애플리케이션과 통신하는 쉽고 정확한 방법이며, 사람들이 생산성을 유지하고 다양한 상황에서 정보를 유지할 수 있습니다.
음성은 사용자의 디바이스에 따라 기본 입력 형식이 되거나 대부분의 경우 보완할 수 있습니다.
텍스트 음성 변환(TTS 또는 음성 합성이라고도 함)은 사용자에게 알리거나 지시하는 데 사용됩니다.
디바이스 지원
- 태블릿
- PC 및 노트북
일반적인 사용
음성 상호 작용에는 다음 세 가지 모드가 있습니다.
자연어
자연어는 우리가 정기적으로 사람들과 구두로 상호 작용하는 방법입니다. 우리의 연설은 사람마다 다르며 상황에 따라 다르며 일반적으로 이해됩니다. 그렇지 않은 경우 종종 다른 단어와 단어 순서를 사용하여 동일한 아이디어를 얻습니다.
앱과의 자연어 상호 작용은 비슷합니다. 우리는 마치 사람인 것처럼 디바이스를 통해 앱에 말하고 그에 따라 이해하고 반응하기를 기대합니다.
자연어는 음성 상호 작용의 가장 고급 모드입니다.
명령 및 제어
명령 및 컨트롤은 구두 명령을 사용하여 단추 클릭 또는 메뉴 항목 선택과 같은 컨트롤 및 기능을 활성화하는 것입니다.
명령 및 제어는 성공적인 사용자 환경에 중요하므로 일반적으로 단일 입력 형식은 권장되지 않습니다. 음성은 일반적으로 기본 설정 또는 하드웨어 기능에 따라 사용자를 위한 몇 가지 입력 옵션 중 하나입니다.
받아쓰기
가장 기본적인 음성 입력 방법입니다. 각 발화는 텍스트로 변환됩니다.
받아쓰기는 일반적으로 앱이 의미나 의도를 이해할 필요가 없는 경우에 사용됩니다.
추가 정보
펜
펜(또는 스타일러스)은 마우스와 같은 픽셀 정밀 포인팅 디바이스로 사용될 수 있으며 디지털 잉크 입력에 가장 적합한 디바이스입니다.
메모 펜 디바이스에는 활성 및 수동의 두 가지 유형이 있습니다.
- 수동 펜에는 전자 장치가 포함되어 있지 않으며 손가락에서 터치 입력을 효과적으로 에뮬레이트합니다. 접촉 압력에 따라 입력을 인식하는 기본 디바이스 디스플레이가 필요합니다. 사용자가 입력 표면에 글을 쓸 때 손을 많이 놓기 때문에 손바닥 인식 실패로 입력 데이터가 손상될 수 있습니다.
- 활성 펜은 전자 장치를 포함하며 복잡한 디바이스 디스플레이를 사용하여 시스템 및 앱에 훨씬 더 광범위한 입력 데이터(호버 또는 근접 데이터 포함)를 제공할 수 있습니다. 손바닥 거부는 훨씬 더 강력합니다.
여기서 펜 디바이스를 참조할 때 풍부한 입력 데이터를 제공하고 주로 정확한 잉크 및 포인팅 상호 작용에 사용되는 활성 펜을 참조합니다.
디바이스 지원
- 태블릿
- PC 및 노트북
일반적인 사용
Windows 잉크 플랫폼은 펜과 함께 필기 노트, 드로잉 및 주석을 만드는 자연스러운 방법을 제공합니다. 이 플랫폼은 디지타이저 입력에서 잉크 데이터 캡처, 잉크 데이터 생성, 출력 디바이스에서 해당 데이터를 잉크 스트로크로 렌더링, 잉크 데이터 관리 및 필기 인식 수행을 지원합니다. 사용자가 쓰거나 그릴 때 펜의 공간 움직임을 캡처하는 것 외에도 앱은 압력, 모양, 색 및 불투명도와 같은 정보를 수집하여 펜, 연필 또는 브러시로 종이에 그리는 것과 매우 유사한 사용자 환경을 제공할 수 있습니다.
펜 입력과 터치 입력이 갈라지는 지점은 터치가 해당 개체에서 수행되는 물리적 제스처(예: 살짝 밀기, 슬라이딩, 끌기, 회전 등)를 통해 화면에서 UI 요소를 직접 조작할 수 있는 능력입니다.
이러한 상호 작용을 지원하려면 펜별 UI 명령 또는 어도던스를 제공해야 합니다. 예를 들어 이전 및 다음(또는 + 및 -) 단추를 사용하여 사용자가 콘텐츠 페이지를 대칭 이동하거나 개체를 회전, 크기 조정 및 확대/축소할 수 있습니다.
추가 정보
만지다
터치를 사용하면 하나 이상의 손가락에서 물리적 제스처를 사용하여 UI 요소의 직접 조작(예: 이동, 회전, 크기 조정 또는 이동)을 대체 입력 방법(마우스 또는 펜과 유사)으로 에뮬레이트하거나 보완적인 입력 방법(펜으로 그린 잉크 스트로크 스머징과 같은 다른 입력의 측면을 수정)으로 사용할 수 있습니다. 이와 같은 촉각 환경은 사용자가 화면의 요소와 상호 작용할 때 더 자연스럽고 실제적인 감각을 제공할 수 있습니다.
디바이스 지원
- 태블릿
- PC 및 노트북
일반적인 사용
터치 입력에 대한 지원은 디바이스에 따라 크게 달라질 수 있습니다.
일부 장치는 터치를 전혀 지원하지 않으며, 일부 장치는 단일 터치 연락처를 지원하는 반면, 다른 장치는 멀티 터치(둘 이상의 연락처)를 지원합니다.
멀티 터치 입력을 지원하는 대부분의 디바이스는 일반적으로 10개의 고유한 동시 연락처를 인식합니다.
일반적으로 터치는 다음과 같습니다.
- 단일 사용자입니다.
- 디바이스 방향에 제한되지 않습니다.
- 텍스트 입력(터치 키보드) 및 디지털 펜 입력(앱 설정)을 포함한 모든 상호 작용에 사용됩니다.
추가 정보
Touchpad
터치 패드는 간접 멀티 터치 입력을 마우스와 같은 포인팅 디바이스의 정밀도 입력과 결합합니다. 이 조합은 터치 최적화 UI와 생산성 앱의 더 작은 대상 모두에 적합한 터치 패드를 만듭니다.
디바이스 지원
- PC 및 노트북
일반적인 사용
터치 패드는 일반적으로 개체 및 UI의 직접 조작을 위해 터치와 유사한 지원을 제공하는 터치 제스처 집합을 지원합니다.
터치 패드에서 지원하는 상호 작용 환경의 이러한 수렴으로 인해 터치 입력에만 의존하지 않고 마우스 스타일 UI 명령 또는 어패던스를 제공하는 것이 좋습니다. 이러한 상호 작용을 지원하기 위해 터치 패드별 UI 명령 또는 어패던스를 제공합니다.
이러한 상호 작용을 지원하려면 마우스별 UI 명령 또는 어푸던스를 제공해야 합니다. 예를 들어 이전 및 다음(또는 + 및 -) 단추를 사용하여 사용자가 콘텐츠 페이지를 대칭 이동하거나 개체를 회전, 크기 조정 및 확대/축소할 수 있습니다.
추가 정보
Keyboard
키보드는 텍스트의 기본 입력 장치이며, 특정 장애가 있는 사용자나 앱과 상호 작용하는 더 빠르고 효율적인 방법으로 생각하는 사용자에게는 필수 요소입니다.
디바이스 지원
- 태블릿
- PC 및 노트북
일반적인 사용
사용자는 하드웨어 키보드와 OSK(화상 키보드) 및 터치 키보드의 두 가지 소프트웨어 키보드를 통해 Windows 앱과 상호 작용할 수 있습니다.
OSK는 터치, 마우스, 펜/스타일러스 또는 기타 포인팅 장치를 사용하여 데이터를 입력하고 입력하는 데 물리적 키보드 대신 사용할 수 있는 시각적 소프트웨어 키보드입니다(터치 스크린은 필요하지 않음). OSK는 물리적 키보드가 없는 시스템 또는 이동성 장애가 기존 물리적 입력 장치를 사용하지 못하게 하는 사용자를 위해 제공됩니다. OSK는 하드웨어 키보드의 기능을 대부분 에뮬레이트합니다.
터치 키보드는 터치 입력이 있는 텍스트 입력에 사용되는 시각적 소프트웨어 키보드입니다. 터치 키보드는 텍스트 입력에만 사용되므로(하드웨어 키보드를 에뮬레이트하지 않음) OSK를 대체하지 않으며 텍스트 필드 또는 기타 편집 가능한 텍스트 컨트롤에 포커스가 있을 때만 나타납니다. 터치 키보드는 앱 또는 시스템 명령을 지원하지 않습니다.
메모 OSK는 터치 키보드보다 우선 순위가 있으며 OSK가 있는 경우 표시되지 않습니다.
일반적으로 키보드는 다음과 같습니다.
- 단일 사용자입니다.
- 디바이스 방향에 제한되지 않습니다.
- 텍스트 입력, 탐색, 게임 플레이 및 접근성에 사용됩니다.
- 사전에 또는 사후적으로 항상 사용할 수 있습니다.
추가 정보
Mouse
마우스는 사용자 상호 작용을 대상으로 지정하고 명령하는 데 픽셀 수준의 정밀도가 필요한 생산성 앱 및 고밀도 UI에 가장 적합합니다.
디바이스 지원
- 태블릿
- PC 및 노트북
일반적인 사용
다양한 키보드 키(Ctrl, Shift, Alt 등)를 추가하여 마우스 입력을 수정할 수 있습니다. 이러한 키는 마우스 왼쪽 단추, 오른쪽 마우스 단추, 휠 단추 및 확장된 마우스 최적화 명령 집합의 X 단추와 결합할 수 있습니다. (일부 Microsoft 마우스 장치에는 일반적으로 웹 브라우저에서 앞뒤로 이동하는 데 사용되는 X 단추라고 하는 두 개의 추가 단추가 있습니다.)
마우스 및 터치 입력이 다른 펜과 마찬가지로 터치는 해당 개체에서 수행되는 물리적 제스처(예: 살짝 밀기, 슬라이딩, 끌기, 회전 등)를 통해 화면에서 UI 요소의 직접 조작을 에뮬레이트하는 기능입니다.
이러한 상호 작용을 지원하려면 마우스별 UI 명령 또는 어푸던스를 제공해야 합니다. 예를 들어 이전 및 다음(또는 + 및 -) 단추를 사용하여 사용자가 콘텐츠 페이지를 대칭 이동하거나 개체를 회전, 크기 조정 및 확대/축소할 수 있습니다.
추가 정보
제스처
제스처는 애플리케이션을 제어하거나 상호 작용하기 위한 입력으로 인식되는 모든 형태의 사용자 이동입니다. 제스처는 단순히 손을 사용하여 화면에서 무언가를 대상으로 하는 것에서부터 특정하고 학습된 이동 패턴, 몸 전체를 사용하는 지속적인 움직임의 긴 스트레칭에 이르기까지 다양한 형태를 취합니다. 사용자 지정 제스처를 디자인할 때는 로캘 및 문화권에 따라 의미가 달라질 수 있으므로 주의해야 합니다.
디바이스 지원
- PC 및 노트북
일반적인 사용
정적 제스처 이벤트는 상호 작용이 완료된 후에 발생합니다.
- 정적 제스처 이벤트에는 Tapped, DoubleTapped, RightTapped 및 Holding이 포함됩니다.
조작 제스처 이벤트는 진행 중인 상호 작용을 나타냅니다. 사용자가 요소를 터치하면 실행되기 시작하여 사용자가 손가락을 떼거나 조작이 취소될 때까지 계속됩니다.
조작 이벤트에는 확대/축소, 이동 또는 회전과 같은 멀티 터치 상호 작용과 드래그와 같은 관성 및 속도 데이터를 사용하는 상호 작용이 포함됩니다. (조작 이벤트에서 제공하는 정보는 상호 작용을 식별하지 않고 위치, 번역 델타 및 속도와 같은 데이터를 제공합니다.)
PointerPressed 및 PointerMoved와 같은 포인터 이벤트는 포인터 동작 및 누름 및 릴리스 이벤트를 구분하는 기능을 포함하여 각 터치 접촉에 대해 낮은 수준의 세부 정보를 제공합니다.
Windows에서 지원하는 상호 작용 환경의 수렴으로 인해 터치 입력 지원에만 의존하지 않고 마우스 스타일 UI 명령 또는 어펜던스도 제공하는 것이 좋습니다. 예를 들어 이전 및 다음(또는 + 및 -) 단추를 사용하여 사용자가 콘텐츠 페이지를 대칭 이동하거나 개체를 회전, 크기 조정 및 확대/축소할 수 있습니다.
게임 패드/컨트롤러
게임 패드/컨트롤러는 일반적으로 게임 플레이 전용의 고도로 특수화된 장치입니다. 그러나 기본 키보드 입력을 에뮬레이트하는 데도 사용되며 키보드와 매우 유사한 UI 탐색 환경을 제공합니다.
디바이스 지원
- PC 및 노트북
일반적인 사용
게임을 플레이하고 특수 콘솔과 상호 작용합니다.
여러 입력
가능한 한 많은 사용자와 디바이스를 수용하고 최대한 많은 입력 유형(제스처, 음성, 터치, 터치 패드, 마우스 및 키보드)으로 작동하도록 앱을 디자인하면 유연성, 유용성 및 접근성이 극대화됩니다.
디바이스 지원
- 태블릿
- PC 및 노트북
일반적인 사용
사용자가 서로 통신할 때 음성과 제스처의 조합을 사용하는 것처럼 앱과 상호 작용할 때 여러 형식 및 입력 모드도 유용할 수 있습니다. 그러나 이러한 결합된 상호 작용은 매우 혼란스러운 환경을 만들 수 있으므로 가능한 한 직관적이고 자연스러워야 합니다.
Windows developer