IOS의 내게 필요한 옵션Accessibility on iOS

이 페이지에서는 iOS 접근성 Api를 사용 하 여 내게 필요한 옵션 검사 목록에 따라 앱을 빌드하는 방법을 설명 합니다.This page describes how to use the iOS Accessibility APIs to build apps according to the accessibility checklist. 다른 플랫폼 Api는 Android 접근성OS X 접근성 페이지를 참조 하세요.Refer to the Android accessibility and OS X accessibility pages for other platform APIs.

UI 요소 설명Describing UI Elements

iOS는 개발자가 컨트롤을 보다 쉽게 액세스할 수 있도록 음성 화면 판독기에서 사용할 수 있는 설명 텍스트를 추가할 수 있는 AccessibilityLabelAccessibilityHint 속성을 제공 합니다.iOS provides the AccessibilityLabel and AccessibilityHint properties for developers to add descriptive text which can be used by the VoiceOver screen reader to make the controls more accessible. 컨트롤에는 액세스 가능 모드에서 추가 컨텍스트를 제공 하는 하나 이상의 특성으로 태그를 지정할 수도 있습니다.Controls can also be tagged with one or more traits that provide additional context in accessible modes.

일부 컨트롤에는 액세스할 필요가 없을 수도 있습니다 (예: 텍스트 입력에 대 한 레이블 또는 순수한 장식용 이미지). 이러한 경우에는 IsAccessibilityElement를 제공 하 여 내게 필요한 옵션을 사용 하지 않도록 설정 합니다.Some controls may not need to be accessible (for example, a label on a text input or an image that is purely decorative) – the IsAccessibilityElement is provided to disable accessibility in those cases.

UI 디자이너UI Designer

Properties Pad 에는 IOS UI 디자이너에서 컨트롤을 선택할 때 이러한 설정을 편집할 수 있도록 하는 내게 필요한 옵션 섹션이 포함 되어 있습니다.The Properties Pad contains an accessibility section that allows these settings to be edited when a control is selected in the iOS UI Designer:

C#C#

이러한 속성은 코드에서 직접 설정할 수도 있습니다.These properties can also be set directly in code:

usernameInput.AccessibilityLabel = "Search";
usernameInput.Hint = "Press Enter after typing to search employee list";
someLabel.IsAccessibilityElement = false;
displayOnlyText.AccessibilityTraits = UIAccessibilityTrait.Header | UIAccessibilityTrait.Selected;

AccessibilityIdentifier 란?What is AccessibilityIdentifier?

AccessibilityIdentifier는 UIAutomation API를 통해 사용자 인터페이스 요소를 참조 하는 데 사용할 수 있는 고유 키를 설정 하는 데 사용 됩니다.The AccessibilityIdentifier is used to set a unique key that can be used to refer to user interface elements via the UIAutomation API.

AccessibilityIdentifier 값은 사용자에 게 음성으로 표시 되거나 표시 되지 않습니다.The value of AccessibilityIdentifier is never spoken or displayed to the user.

PostNotificationPostNotification

UIAccessibility.PostNotification 메서드를 사용 하면 직접 상호 작용 (예: 특정 컨트롤과 상호 작용 하는 경우) 외부의 사용자에 게 이벤트를 발생 시킬 수 있습니다.The UIAccessibility.PostNotification method allows events to be raised to the user outside of direct interaction (for example, when they interact with a specific control).

알림Announcement

코드에서 알림을 전송 하 여 일부 상태가 변경 되었음을 사용자에 게 알릴 수 있습니다 (예: 백그라운드 작업이 완료 됨).An announcement can be sent from code to inform the user that some state has changed (such as a background operation has completed). 이는 사용자 인터페이스의 시각적 표시와 함께 나타날 수 있습니다.This could be accompanied by a visual indication in the user interface:

UIAccessibility.PostNotification (
  UIAccessibilityPostNotification.Announcement,
    new NSString(@"Item was saved"));

LayoutChangedLayoutChanged

화면 레이아웃을 사용 하는 경우 LayoutChanged 알림이 사용 됩니다.The LayoutChanged announcement is used when the screen layout:

UIAccessibility.PostNotification (
  UIAccessibilityPostNotification.LayoutChanged,
    someControl);  // someControl gets focus

접근성 및 지역화Accessibility and Localization

레이블 및 힌트와 같은 내게 필요한 옵션 속성은 사용자 인터페이스의 다른 텍스트와 마찬가지로 지역화할 수 있습니다.Accessibility properties like the label and hint can be localized just like other text in the user interface.

Mainstoryboard.storyboardMainStoryboard.strings

사용자 인터페이스가 storyboard에서 배치 되는 경우 다른 속성과 같은 방법으로 접근성 속성에 대 한 번역을 제공할 수 있습니다.If the user interface is laid out in a storyboard, you can provide translations for accessibility properties in the same way as other properties. 아래 예제에서 UITextField에는 Pqa-aa-ury지역화 ID 와 스페인어로 설정 되는 두 개의 액세스 가능성 속성이 있습니다.In the example below, a UITextField has a Localization ID of Pqa-aa-ury and two accessibility properties being set in Spanish:

/* Accessibility */
"Pqa-aa-ury.accessibilityLabel" = "Notas input";
"Pqa-aa-ury.accessibilityHint" = "escriba más información";

이 파일은 스페인어 콘텐츠에 대 한 es. lproj 디렉터리에 배치 됩니다.This file would be placed in the es.lproj directory for Spanish content.

지역화 가능 문자열Localizable.strings

또는 지역화 된 콘텐츠 디렉터리의 지역화할 수 있는 문자열 파일에 번역을 추가할 수 있습니다 (예:Alternatively, the translations can be added to the Localizable.strings file in the localized content directory (eg. .스페인어 용 lproj ):es.lproj for Spanish):

/* Accessibility */
"Notes" = "Notas input";
"Provide more information" = "escriba más información";

이러한 번역은 LocalizedString 메서드를 C# 통해에서 사용할 수 있습니다.These translations can be used in C# via the LocalizedString method:

notesText.AccessibilityLabel = NSBundle.MainBundle.LocalizedString ("Notes", "");
notesText.AccessibilityHint = NSBundle.MainBundle.LocalizedString ("Provide more information", "");

콘텐츠 지역화에 대 한 자세한 내용은 iOS 지역화 가이드 를 참조 하세요.Refer to the iOS localization guide for more details on localizing content.

접근성 테스트Testing Accessibility

VoiceOver은 일반 > 내게 필요한 옵션 > voiceover으로 이동 하 여 설정 앱에서 사용 하도록 설정 됩니다.VoiceOver is enabled in the Settings app by navigating to General > Accessibility > VoiceOver:

내게 필요한 옵션 화면에서는 확대/축소, 텍스트 크기, 색 & 대비 옵션, 음성 설정 및 기타 구성 옵션에 대 한 설정도 제공 합니다.The Accessibility screen also provides settings for zoom, text size, color & contrast options, speech settings, and other configuration options.

다음 VoiceOver 지침 에 따라 iOS 장치에서 액세스 가능성을 테스트 합니다.Follow these VoiceOver instructions to test accessibility on iOS devices.

시뮬레이터 테스트Simulator Testing

시뮬레이터에서 테스트할 때 접근성 검사기 를 사용 하 여 내게 필요한 옵션 속성 및 이벤트가 올바르게 구성 되었는지 확인 하는 데 도움이 됩니다.When testing in the simulator, the Accessibility Inspector is available to help verify accessibility properties and events are correctly configured. 일반 > 내게 필요한 옵션 > 접근성 검사기로 이동 하 여 설정 앱에서 검사기를 설정 합니다.Turn on the inspector in the Settings app by navigating to General > Accessibility > Accessibility Inspector:

사용 하도록 설정 되 면 검사기 창은 항상 iOS 화면을 가리킵니다.Once enabled, the inspector window hovers over the iOS screen at all times. 테이블 뷰 행을 선택 하는 경우의 출력 예는 다음과 같습니다. 레이블에 행의 내용을 제공 하는 문장이 포함 되 고 "done" (즉, 눈금이 표시 됨) 됩니다.Here is an example of the output when a table view row is selected – notice the Label contains a sentence that gives the content of the row and also that it is "done" (ie. the tick is visible):

검사기가 표시 되는 동안 왼쪽 위에 있는 "X" 아이콘을 사용 하 여 오버레이를 임시로 표시 하 고 숨기고 접근성 설정을 사용/사용 하지 않도록 설정 합니다.While the inspector is visible, use the "X" icon at the top-left to temporarily show and hide the overlay and enable/disable accessibility settings.