티스토리 뷰
iOS ) Accessibility(접근성) - Accessibility Programming Guide for iOS (1)
Zedd0202 2018. 3. 1. 20:48안녕하세요 :) Zedd입니다.
저번에 <접근성이란?>글을 쓰면서 접근성에 대해 조금 알아봤는데요, 오늘은..실전...?........꼭 써보고싶어요 :)
==>라고 시작은 했지만, 시작하기 전에 프로그래밍 가이드를 봐야할 것 같네요.
"세상에서 가장 강력한 테크놀로지란 곧 모든 사람이 사용할 수 있는 테크놀로지를 의미합니다."
ㅎㅎ이걸 읽으면 뭔가..자극된달까......힘내봅시다.
시작할게요.
그리고 접근성에 관심 있으신 분은 여기에 들어가보세요. iOS개발자를 위한 접근성을 공부하기 위한 링크가 가득..
저는 그 중 첫번째인 Accessibility Programming Guide for iOS를 먼저 알려고 하는거구요 ㅎㅎ..
+ 그전에!!!!!!!! 접근성에는 어떤 종류?가 있는지 먼저 봅시다..
Captioning and Audio Descriptions
Speech
iOS기기는 30개 이상의 언어로, 앱에서 선택한 텍스트를 크게 읽을 수 있으며, 음성의 사투리 및 말하기 속도를 조정 할 수 있습니다(사투리 대박..한국은 안되겠죠ㅎㅎ?..)AVSpeechSynthesizer 클래스는 iOS 장치의 텍스트에서 합성 된 음성을 생성하고 진행중인 음성의 진행 상태를 제어하거나 모니터링하는 방법을 제공합니다.
VoiceOver
VoiceOver는 앱의 객체와 상호 작용하는 스크린 리더로, 사용자가 볼 수 없더라도 인터페이스를 사용할 수 있습니다. (눈이 안보이는 사람들이 사용 할 수 있겠죠?)
앱의 사용자 인터페이스 요소에 접근과 유용함을 보장하세요.
Guided Access
Guided Access는 자폐증이나 기타 주의력 및 감각 문제를 가진 사람들이 당면한 과제에 집중할 수 있도록 도와줍니다. 부모님, 선생님 또는 치료사는 iOS 기기가 홈 버튼을 사용 중지하여 한 앱에 머 무르도록 제한 할 수 있으며 화면의 특정 영역에서 터치 입력을 제한 할 수도 있습니다.
에 Guided Access 프로토콜을 구현하면 사용자의 필요에 따라 작동하는 앱의 부분을 지정할 수 있습니다. 간병인은 설정이나 도움말과 같은 민감한 영역에 대한 액세스를 쉽게 제어 할 수있어 학생들이 집중하지 못하게 할 수 있습니다.
이제 진짜 시작할게요.
Accessibility Programming Guide for iOS
iOS 3.0이상을 사용하면, 시각 장애가 있는 사용자가 iOS기반 기기를 사용할 수 있도록 VoiceOver를 사용 할 수 있습니다.
iOS 3.0에 도입된 UI 접근성 프로그래밍 인터페이스는 VoiceOver사용자가 자신의 App에 접근 할 수 있게 도와줍니다. VoiceOver는 App의 사용자 인터페이스를 설명하고, 음성 및 사운드를 사용하여 앱의 View및 컨트롤를 탐색하는 데 도움을 줍니다.
iOS 3.0이상에서 실행되는 iPhone 앱은 VoiceOver사용자가 접근 할 수 있어야 합니다.
Understanding Accessibility on iOS
처음부터 iOS기반 장치에는 시각적 음성 메일, Mail의 큰 글꼴, 웹 페이지, 사진 및 지도의 확대를 포함하여 모든 사람이 쉽게 사용 할 수 있게 해주는 몇가지 기능이 포함되었습니다. 다음과 같은 접근성 기능을 추가하면, 시각장애, 청각장애 및 신체장애를 가진 사람들이 자신의 장치를 사용하는 것이 더 쉬워집니다.
● Zoom(확대). 전체 장치 화면을 확대합니다.
● White on Black. 디스플레이의 색상을 반전시킵니다.
● Mono Audio. 왼쪽과 오른쪽 채널의 사운드를 양쪽에서 재생되는 모노신호로 결합합니다.
● Speak Auto-text. 사용자가 입력하는 동안 iPhone이 텍스트 수정 및 추천을 말합니다.
● Voice Control. 사용자가 음성 명령을 사용하여 전화를 걸 수 있습니다. (Siri겠죠 아마?)
또한 시각장애가 있는 사용자는 VoiceOver를 사용하여 기기 사용에 도움을받을 수 있습니다.
Accessibility and VoiceOver
Why You Should Make Your App Accessible
다음과 같은 이유로, VoiceOver사용자가 iPhone앱에 접근할 수 있도록 해야합니다.
● 사용자 기반이 증가합니다. 훌륭한 앱을 만들기 위해 당신은 열심히 노력했습니다. 더 많은 사용자가 사용 할 수 있는 기회를 놓치지 마세요.
● 사람들이 화면을 보지 않고도 앱을 사용할 수 있습니다. 시각장애가 있는 사용자는 VoiceOver를 사용하여 앱을 사용 할 수 있습니다.
● 접근성 지침을 다루는데 도움이 됩니다. 다양한 관리 기관이 접근성을 위한 지침을 작성하고, VoiceOver사용자가 iPhone 앱에 접근할 수 있도록 하여 만날 수 있습니다.
● 그것은 옳은 일입니다.(It's the right thing to do.)
접근성을 지원한다고 해서 아름다운 iPhone 앱을 혁신하고, 만들 수 있는 능력에는 영향을 미치지 않습니다. UI 접근성 프로그래밍 인터페이스를 사용하면, 앱의 모양을 변경하지 않거나 메인 로직을 방해하지 않는 기능을 추가할 수 있습니다.
iOS Accessibility API and Tools
The UI Accessibility Programming Interface
Accessibility Attributes
참..옛날 아이폰스럽지만.....위 그림은 VoiceOver가 말할 수 있는 정보들이에요. 그림을 잘 보시면, Hint가 있는 요소들이 있죠? 보시면 Hint가 이런일을 하는구나..라고 이해가 가실거에요.
VoiceOver사용자는 자신의 앱 사용을 돕기 위해 Label과 Hint에 의존합니다. 이러한 이유로 앱의 접근 가능한 인터페이스 요소가 정확하고 유익한 설명을 제공하는지 확인하는 것이 특히 중요합니다. 표준 UIKit컨트롤 및 VIew의 경우, 기본 속성 정보가 적절한 경우가 많지만, 이러한 요소를 검사하여 확인해야 합니다. 사용자 지정 컨트롤 및 View의 경우, 정보 중 일부 또는 정부를 직접 제공해야 할 수 있습니다. 이 작업을 수행하는 방법에 대한 지침은 유용한 Label 제작 및 Hint를 참조하세요.
Making Your iOS App Accessible
● 사용자가 상호 작용 할 수 있는 모든 사용자 인터페이스 요소에 접근 할 수 있습니다. 여기에는 정적 텍스트와 같은 정보를 제공하는 요소는 물론, 작업을 수행하는 컨트롤도 포함됩니다.
● 모든 접근 가능한 요소는 정확하고 유용한 정보를 제공합니다.
이러한 기본 사항 외에도, VoiceOver사용자가 TableView를 사용하는 것을 향상시키고, 앱의 동적 요소에 항상 접근 할 수있도록 하는 몇가지 방법이 있습니다.
(왜이렇게 위에서 부터 똑같은 이야기만 반복하는 것 같지..?..........ㅎㅎ..)
Make User Interface Elements Accessible
Accessibility and VoiceOver에서 언급했듯이(위에 있습니다.) 사용자 인터페이스 요소는 접근성 요소로 보고되면, 접근 할 수 있습니다. 비록 사용자 인터페이스 요소가 VoiceOver 사용자에게 유용 할만큼 접근하기에는 충분하지 않지만, 이는 앱을 접근 가능하게 만드는 첫 번째 단계를 나타냅니다.
iOS Accessibility API and Tools에 명시된 바와 같이(위에 있습니다.) 표준 UIKit컨트롤 및 View는 자동으로 접근 할 수 있습니다.
표준 UIKit컨트롤만 사용하는 경우, 앱에 접근 할 수 있도록 많은 추가 작업을 수행할 필요가 없을 것입니다. 이 경우, 다음 단계는 컨트롤에서 제공하는 기본 속성 정보가 앱에서 의미가 있는지 확인하는것입ㄴ디ㅏ. 이 작업을 수행하는 방법은 정확하고 유용한 속성 정보 제공을 참조하세요.
정보를 표시하거나 사용자가 상호 작용해야하는 사용자 지정 View를 만드는 경우, 이러한 View에 대한 접근 가능성을 직접 확인해야 합니다. 이 작업을 수행 한 후에는 이러한 View가 사람들이 사용 할 수 있도록 접근 가능성 정보를 제공해야 합니다.
내가 필요한 옵션 관점에서 보면, 사용자 정의 View는 개인(individual) View 또는 컨테이너 View중 하나입니다.
individual View에는 접근이 필요한 다른 View가 없습다. 예를들어, 아이콘을 표시하고 버튼처럼 동작하는 UIContorl의 사용자 정의 하위 클래스에는 버튼 자체와 별도로 사용자가 상호 작용 할 수 있는 다른 요소가 없습니다. individual View를 접근 가능하게 만드는 방법을 배우려면 "individual View 개별 설정을 접근 가능하게 설정하세요"를 읽으세요.
반면 컨테이너 View에는 사용자가 상호 작용할 수 있는 다른 요소가 포함되어 있습니다. 예를들어, 기하학적 모양의 그리기를 수행하는 UIView의 사용자 정의 하위 클래스에서, shapes은 사용자가 상호 작용 할 수 있는 요소를 나타내며, 컨테이너 View와 구별됩니다.
컨테이너 View내의 이러한 개별 요소는 UIView의 하위 클래스가 아니기 때문에 자동으로 접근 할 수 없으며 접근 가능성 정보를 제공하지 않습니다. 컨테이너 View의 내용을 접근 가능하게 만드는 방법을 배우려면 "사용자 정의 컨테이너 View의 내용에 접근 가능 할 수 있게 만들기"를 읽으세요.
위에서 ~를 참조하세요, ~를 읽으세요한 링크는 다...나올겁니다. 전부 Accessibility Programming Guide for iOS안에 있는 내용이에요 :)
일단 이게 챕터1..?의 내용입니다. 챕터2는 따로 글 쓸게요 :) 하기전에 공부를 좀 해야할 것 같아서 ㅎㅎㅎ
접근성을 공부하시는데 도움이 꼭 되었으면 좋겠어요!!!!!!!! 꼭 절대 그냥 지나칠일이 아니라는 것도, "세상에서 가장 강력한 테크놀로지란 곧 모든 사람이 사용할 수 있는 테크놀로지를 의미합니다."라는 것도 꼭!! 명심하셨으면 좋겠어요.
'iOS' 카테고리의 다른 글
iOS ) Kakao API - 시작하기 (7) | 2018.03.08 |
---|---|
iOS ) Accessibility(접근성) - Accessibility Inspector (0) | 2018.03.01 |
iOS ) CAEmitterLayer프로퍼티 정리 (0) | 2018.03.01 |
iOS ) FileManager를 이용해 파일/폴더 만드는 법 (9) | 2018.02.26 |
iOS ) FileManager 사용하면서 알아두면 좋을 것들 (3) | 2018.02.26 |
- 제이슨 파싱
- swift tutorial
- np-complete
- np-hard
- WidgetKit
- 피아노
- Git
- actor
- swift sort
- github
- 회고
- fastlane
- Xcode
- FLUTTER
- IOS
- iOS delegate
- WWDC
- 스위프트 문법
- UIBezierPath
- swift 공부
- 스위프트
- swift3
- WKWebView
- Combine
- SwiftUI
- Swift
- Accessibility
- swift array
- swift delegate
- ios 13
- Total
- Today
- Yesterday