Notice
Recent Posts
Recent Comments
Link
관리 메뉴

김종권의 iOS 앱 개발 알아가기

[iOS - swift] 2. VoiceOver Accessibility (앱 접근성) - 주의사항, 시뮬레이터 Accessibility 테스트 본문

iOS 응용 (swift)

[iOS - swift] 2. VoiceOver Accessibility (앱 접근성) - 주의사항, 시뮬레이터 Accessibility 테스트

jake-kim 2023. 5. 17. 00:38

1. VoiceOver Accessibility (앱 접근성) - 개념

2. VoiceOver Accessibility (앱 접근성) - 주의사항, 시뮬레이터 Accessibility 테스트 v

3. VoiceOver Accessibility (앱 접근성) - 적용 방법, 그룹핑 방법(UIAccessibilityElement)

접근성 구현 시 주의사항

  • 앱 요소에 대한 접근성 정보를 추가
    • VoiceOver는 기분적으로 사용자 정의 UI요소를 인식하지 않으므로 따로 정보를 추가해주어야함
  • VoiceOver 올바른 순서로 요소를 탐색하도록 요소를 그룹화
    • VoiceOver는 앞쪽 가장자리부터 뒤쪽 가장자리까지 읽는데, 다른 순서로 읽도록 하려면 그룹을 사용하여 앱에 적합한 탐색을 용이하게 설정
  • VoiceOver가 읽을 수 있는 설명을 디테일하게 모두 포함하기
    • 버튼을 누르면 회색에서 녹색으로 바뀌는 UI가 있는데, 이런 요소까지 모두 VoiceOver가 말해주도록 구현할 것

앱의 접근성 구현 방법

  • isAccessibilityElement로 활성화
    • 디폴트 - UIKit control 종류는 true이고, 일반적인 UIKit은 false
    • (UIView는 false, UILabel은 true)

https://developer.apple.com/documentation/objectivec/nsobject/1615141-isaccessibilityelement

label.isAccessibilityElement = true // default는 true
  • 선택했을때 읽어주기 - 해당 요소를 탭하면 accessibilityLabel을 먼저 읽어주고 그 후에 accessibilityHint를 이어서 VoiceOver에서 말해줌
    • accessibilityLabel: 프로퍼티에 텍스트를 입력
    • accessibilityHint: 동작시키기 위한 방법을 안내
label.accessibilityLabel = "title: \(label.text!)"
label.accessibilityHint = "This is title of app"

시뮬레이터 Accessibility 테스트

  • Xcode > Open Developer Tool > Accessibility Inspector 선택

  • Accessibility Inspector에서 초점 버튼을 선택한 후 시뮬레이터를 누르면 포커스가 시뮬레이터에 잡히고, 재생버튼을 누르면 자동으로 순서대로 수행

  • 방향 버튼을 누르면 읽어주는 순서도 쉽게 알기가 가능

접근성 정보 형태

  • 읽어주는 순서
    • 장치의 언어 방향으로 읽어주는 형태
    • ex) 왼쪽에서 오른쪽으로 영어를 읽고 오른쪽에서 왼쪽으로 아럽어와 페르시아어를 읽는 형태
  •  그룹화를 통해 읽는 방식을 정하기가 가능

읽어주는 형태

* 그룹화 방법은 다음 포스팅 글에서 계속

 

* 참고

https://developer.apple.com/documentation/objectivec/nsobject/1615141-isaccessibilityelement

https://developer.apple.com/library/archive/technotes/TestingAccessibilityOfiOSApps/TestAccessibilityonYourDevicewithVoiceOver/TestAccessibilityonYourDevicewithVoiceOver.html#//apple_ref/doc/uid/TP40012619-CH3-SW1

https://developer.apple.com/documentation/accessibility/supporting_voiceover_in_your_app/

Comments