모바일 앱 접근성 지침 · 6. 운용의 용이성 · 6.5 입력 방식
6.5.1 단일 포인터 입력
다중 포인트·경로기반·끌기 동작으로 하는 입력은 한 손가락 탭 같은 단일 포인터로도 조작할 수 있어야 합니다.
KS X 3253:2016
한눈에 보기
- 검사 항목
- 6.5.1 단일 포인터 입력
- 원칙
- 6. 운용의 용이성
- 지침
- 6.5 입력 방식
- 도입
- KS X 3253:2016
요구 사항
두 개 이상의 손가락을 동시에 쓰는 다중 포인트 동작(예: 핀치 줌, 회전, 두 손가락 탭), 쓸어 넘기기 같은 경로기반 동작(예: 스와이프, 슬라이더 조절, 그리기), 끌어서 놓기 같은 끌기 동작으로 작동하는 모든 기능은 단일 포인터(예: 한 손가락 탭) 입력으로도 조작할 수 있어야 합니다.
예외
- 피아노 앱의 건반 동시 누르기 같은 다중 포인트 동작, 서명 같은 경로기반 동작이 필수인 경우
- 운영체제, 사용자 에이전트, 보조기기가 지원하는 동작(예: 운영체제의 두 손가락 스크롤)
개정 내역: 유지 — 2016판 「6.2 누르기 동작 지원」
2025판은 끌기(dragging) 동작을 포함해 WCAG 2.5.1과 2.5.7에 함께 대응합니다.
왜 필요한가요
한 손가락이나 터치펜·헤드 포인터만 쓸 수 있는 사용자, 손떨림이나 시각장애로 정교한 제스처가 어려운 사용자, 복잡한 조작을 이해하기 어려운 인지·학습장애인도 기능을 쓸 수 있습니다. 화면낭독기 사용 중에는 일반 스와이프가 탐색 제스처로 바뀌므로 단일 탭 대안이 특히 중요합니다.
도움받는 사용자
- 한 손가락·스틱 포인팅 장치 사용자
- 손떨림이 있는 사용자
- 화면낭독기 사용자
- 인지·학습장애인
적용 방법
스와이프 삭제에는 삭제 버튼이나 접근성 동작을, 핀치 줌에는 확대/축소 버튼을, 끌어서 순서 바꾸기에는 위/아래 이동 버튼을 함께 제공합니다.
// 스와이프 삭제의 대안: 접근성 사용자 정의 동작 (TalkBack 동작 메뉴)
ViewCompat.addAccessibilityAction(rowView, "삭제") { _, _ -> deleteItem(); true }
// 핀치 줌의 대안 버튼
zoomInButton.setOnClickListener { map.animateCamera(CameraUpdateFactory.zoomIn()) }Row(Modifier.semantics {
customActions = listOf(
CustomAccessibilityAction("위로 이동") { moveUp(); true },
CustomAccessibilityAction("아래로 이동") { moveDown(); true })
}) { Text(item.name) }cell.accessibilityCustomActions = [
UIAccessibilityCustomAction(name: "삭제") { _ in self.delete(item); return true }
]
// 화면에도 '편집' 버튼 → 탭으로 삭제할 수 있는 UI 제공Semantics(
customSemanticsActions: {CustomSemanticsAction(label: '삭제'): () => delete(item)},
child: Dismissible(key: Key(item.id), onDismissed: (_) => delete(item), child: tile),
)<View
accessible
accessibilityActions={[{ name: 'delete', label: '삭제' }]}
onAccessibilityAction={(e) => e.nativeEvent.actionName === 'delete' && remove(item)}
>{/* 스와이프 가능한 행 */}</View>사례
스와이프로만 삭제
목록 항목을 왼쪽으로 밀어야만 [삭제] 노출, 다른 방법 없음탭 대안 제공
항목의 [⋯] 버튼 → [삭제] + TalkBack/VoiceOver 동작 메뉴 "삭제"자주 하는 실수
- 스와이프, 길게 눌러 끌기, 두 손가락 제스처로만 실행되는 기능이 있습니다.
- 슬라이더를 끌기로만 조절할 수 있고 버튼이나 값 입력 대안이 없습니다.
- 사용자 정의 동작을 넣었지만 화면에는 단일 탭 대안이 없어 스위치·한 손가락 사용자가 쓸 수 없습니다.
검사 방법
- 앱의 제스처 기반 기능(스와이프, 핀치, 끌어서 놓기, 회전)을 모두 찾습니다.
- 각 기능을 한 손가락 탭만으로 수행할 수 있는지 확인합니다.
- TalkBack·VoiceOver를 켠 상태에서도 해당 기능을 수행할 수 있는지(동작 메뉴, 조절 제스처 등) 확인합니다.