ARIA 접근성 가이드

모바일 앱 접근성 지침 · 6. 운용의 용이성 · 6.2 충분한 시간 제공

6.2.2 움직임 제어

자동 스크롤, 롤링 배너처럼 자동으로 변경되는 콘텐츠는 일시정지하고 앞뒤로 이동할 수 있어야 합니다.

KS X 3253:2016

한눈에 보기

검사 항목
6.2.2 움직임 제어
원칙
6. 운용의 용이성
지침
6.2 충분한 시간 제공
도입
KS X 3253:2016

요구 사항

자동 스크롤링, 롤링 등 자동으로 변경되는 콘텐츠를 제공하는 경우 일시정지할 수 있는 수단을 제공해야 합니다. 사용자가 일시정지하고 원하는 콘텐츠를 선택할 수 있는 제어 기능(예: 앞으로 이동, 뒤로 이동, 정지)을 제공해야 합니다.

개정 내역: 유지 — 2016판 「6.4 정지 기능 제공」

왜 필요한가요

롤링 배너나 흘러가는 뉴스처럼 자동으로 바뀌는 콘텐츠를 따라가기 어려운 지체장애인, 고령자, 뇌병변장애인도 콘텐츠를 이용할 수 있습니다. 화면낭독기로 읽는 도중 내용이 바뀌는 문제도 막습니다.

도움받는 사용자

  • 지체·뇌병변장애인
  • 고령자
  • 화면낭독기 사용자
  • 주의집중에 어려움이 있는 사용자

적용 방법

자동 넘김 배너에는 일시정지/재생, 이전/다음 버튼을 두고, 화면낭독기가 켜져 있거나 사용자가 배너에 초점을 두면 자동 넘김을 멈춥니다. 웹뷰라면 캐러셀 패턴을 참고하세요.

Android (Kotlin · View)
val am = getSystemService(AccessibilityManager::class.java)
if (am.isTouchExplorationEnabled) stopAutoScroll()      // TalkBack 사용 중엔 자동 넘김 중지
pauseButton.setOnClickListener {
    autoScroll = !autoScroll
    pauseButton.contentDescription = if (autoScroll) "자동 넘김 정지" else "자동 넘김 재생"
}
iOS (Swift · UIKit)
if UIAccessibility.isVoiceOverRunning || UIAccessibility.isReduceMotionEnabled { carousel.stopAutoScroll() }
// 스와이프 대신 VoiceOver 조절(위/아래 쓸기)로 넘길 수 있게
carousel.accessibilityTraits = .adjustable
override func accessibilityIncrement() { carousel.showNext() }
override func accessibilityDecrement() { carousel.showPrevious() }

사례

정지할 수 없는 롤링 배너

비권장텍스트
3초마다 자동으로 넘어가는 배너, 컨트롤 없음

제어 버튼 제공

권장텍스트
[◀ 이전] [❚❚ 정지] [다음 ▶]  2/5

자주 하는 실수

  • 자동으로 넘어가는 배너에 정지·이전·다음 컨트롤이 없습니다.
  • 정지 버튼이 있지만 레이블이 없거나 상태가 바뀌어도 레이블이 그대로입니다.
  • 화면낭독기가 배너를 읽는 도중 다음 배너로 바뀌어 내용을 끝까지 들을 수 없습니다.

검사 방법

  • 자동으로 바뀌는 배너, 공지 롤링, 자동 스크롤 영역을 찾습니다.
  • 일시정지와 앞/뒤 이동 수단이 있고 TalkBack·VoiceOver로 조작 가능한지 확인합니다.

다른 지침의 대응 항목