UIAccessibility 非正式协议

来源:互联网 发布:win10磁盘优化有几遍 编辑:程序博客网 时间:2024/06/06 02:00

原文:UIAccessibility Protocol Reference
翻译: 刘辉(中国信息无障碍产品联盟&信息无障碍研究会)

UIAccessibility简介

一、任务

  • 1.1判定无障碍
    • 1.1.1 isAccessibilityElement 属性
  • 1.2配置无障碍元素
    • 1.2.1 accessibilityActivationPoint 属性
    • 1.2.2 accessibilityElementsHidden 属性
    • 1.2.3 accessibilityFrame 属性
    • 1.2.4 accessibilityHint 属性
    • 1.2.5 accessibilityLabel 属性
    • 1.2.6 accessibilityLanguage 属性
    • 1.2.7 accessibilityPath 属性
    • 1.2.8 accessibilityTraits 属性
    • 1.2.9 accessibilityValue 属性
    • 1.2.10 accessibilityViewIsModal 属性
    • 1.2.11 shouldGroupAccessibilityChildren 属性
    • 1.2.12 accessibilityNavigationStyle 属性

二、数据类型

  • 2.1 UIAccessibilityTraits
  • 2.2 UIAccessibilityZoomType
  • 2.3 UIAccessibilityNotifications

三、常量

  • 3.1 无障碍特性(Accessibility Traits)
  • 3.2 通知字典关键值(Notification Dictionary Keys)
  • 3.3 属性字符串的语音属性(Speech Attributes for Attributed Strings)
  • 3.4 辅助技术标识(Assistive Technology Identifiers)
  • 3.5 UIAccessibilityNavigationStyle

四、通知

  • 4.1 UIAccessibilityAnnouncementNotification
  • 4.2 UIAccessibilityAnnouncementDidFinishNotification
  • 4.3 UIAccessibilityBoldTextStatusDidChangeNotification
  • 4.4 UIAccessibilityClosedCaptioningStatusDidChangeNotification
  • 4.5 UIAccessibilityDarkerSystemColorsStatusDidChangeNotification
  • 4.6 UIAccessibilityGrayscaleStatusDidChangeNotification
  • 4.7 UIAccessibilityGuidedAccessStatusDidChangeNotification
  • 4.8 UIAccessibilityInvertColorsStatusDidChangeNotification
  • 4.9 UIAccessibilityLayoutChangedNotification
  • 4.10 UIAccessibilityMonoAudioStatusDidChangeNotification
  • 4.11 UIAccessibilityPageScrolledNotification
  • 4.12 UIAccessibilityPauseAssistiveTechnologyNotification
  • 4.13 UIAccessibilityReduceMotionStatusDidChangeNotification
  • 4.14 UIAccessibilityReduceTransparencyStatusDidChangeNotification
  • 4.15 UIAccessibilityResumeAssistiveTechnologyNotification
  • 4.16 UIAccessibilityScreenChangedNotification
  • 4.17 UIAccessibilitySpeakScreenStatusDidChangeNotification
  • 4.18 UIAccessibilitySpeakSelectionStatusDidChangeNotification
  • 4.19 UIAccessibilitySwitchControlStatusDidChangeNotification
  • 4.20 UIAccessibilityVoiceOverStatusChanged

UIAccessibility简介

继承自: Not Applicable;
遵循: Not Applicable;
导入语句:

OBJECTIVE-C@import UIKit;

可获得性:在iOS3.0及更高版本中可获得;

UIAccessibility非正式协议提供关于应用用户界面元素的无障碍信息。辅助应用,例如VoiceOver,将此信息传递给残障用户,帮助其使用应用。

标准UIKit控件和视图默认实现UIAccessibility方法,因此其对辅助应用默认可访问。这意味着如果应用只使用标准控件和视图,例如UIButton、UISegmentedControl和UITableView,开发者只需要在默认值不完整的时候,提供应用特定的细节信息。开发者可以在Interface Builder中设置这些值,或在该非正式协议中设置这些属性。

UIAccessibility非正式协议也可由UIAccessibilityElement类实现,该类呈现自定义用户界面对象。如果创建一个自定义UIView子类,开发者需要创建一个UIAccessibilityElement实例来呈现它。在这种情景下,开发者要保证正确设置所有UIAccessibility属性并返回无障碍元素的属性。

一、任务

1.1判定无障碍

1.1.1 isAccessibilityElement 属性

一个布尔值,标识接收者是个辅助应用可访问的无障碍元素。

声明

SWIFTvar isAccessibilityElement: Bool
OBJECTIVE-C@property(nonatomic) BOOL isAccessibilityElement

简介

该属性的默认值为NO,除非接收者是个标准UIKit控件,该情景下,值为YES。

辅助应用只可以获得被无障碍元素呈现的对象的信息。因此,如果实现一个应该对残障用户可访问的自定义控件或视图,将该属性设置为YES。该方式的唯一例外是该视图只是作为其他应该被可访问项目的容器。这样的视图应该实现UIAccessibilityContainer协议并将该属性设置为NO。

可获得性

在iOS3.0及更高的版本中可获得。

1.2配置无障碍元素

1.2.1 accessibilityActivationPoint 属性

在屏幕坐标中,无障碍元素的激活点。

声明

SWIFTvar accessibilityActivationPoint: CGPoint
OBJECTIVE-C@property(nonatomic) CGPoint accessibilityActivationPoint

简介

该属性的默认值是由accessibilityFrame属性给定的无障碍元素框架的中点。一个元素的激活点是当用户双击该元素时,VoiceOver激活的特定区域。

可以指定激活点的能力允许元素在不同情景下呈现给VoiceOver不同的点而不会改变元素自身的样式。例如,主屏幕APP图标的标准激活点是该图标的中点。但是当重置主屏幕上的图标时,图标的激活点变为移除控件的中点(移除控件是图标左上角的圆形X号)。

使用该属性保证小元素的激活点保持准确无误,尽管开发者呈现给VoiceOver是元素的较大版本。

可获得性

在iOS5.0及更高的版本中可获得。

1.2.2 accessibilityElementsHidden 属性

一个布尔值,标识被包含在无障碍元素中的无障碍元素是否被隐藏。

声明

SWIFTvar accessibilityElementsHidden: Bool
OBJECTIVE-C@property(nonatomic) BOOL accessibilityElementsHidden

简介

该属性的默认值为NO。可以使用该属性隐藏被新出现视图覆盖的视图。在该情景中,该隐藏视图在屏幕上仍保持可见,但是它们不能获得用户操作的焦点。

开发者可以使用该属性隐藏VoiceOver用户不需要注意的瞬变视图。例如,当用户调整设备音量的时候,VoiceOver不需要去描述出现的半透明的视图,因为操作已经有足够的听觉反馈。

可获得性

在iOS5.0及更高的版本中可获得。

1.2.3 accessibilityFrame 属性

在屏幕坐标中,无障碍元素的框架。

声明

SWIFTvar accessibilityFrame: CGRect
OBJECTIVE-C@property(nonatomic) CGRect accessibilityFrame

简介

该属性的默认值是CGRectZero,除非接收者是个UIView对象或者UIView的子类,在此情景下,该属性的值为视图的框架。

无障碍元素呈现的对象不是UIView的子类,开发者必须为这些无障碍元素设置该属性,因为该对象的屏幕坐标未知。(开发者不一定要为呈现UIView子类的无障碍元素设置该属性,因为该对象的屏幕坐标已知。)

可获得性

在iOS3.0及更高的版本中可获得。

另请参见

  • accessibilityPath
  • UIAccessibilityConvertFrameToScreenCoordinates

1.2.4 accessibilityHint 属性

使用本地语言,在无障碍元素上执行操作的结果的简单描述。

声明

SWIFTvar accessibilityHint: String?
OBJECTIVE-C@property(nonatomic, copy) NSString *accessibilityHint

简介

该属性的默认只为nil,除非接收者是个UIKit控件,在该情景下,该属性的值是由系统根据控件类型提供的提示。

当无障碍标签不能清楚传达结果的时候,无障碍提示帮助用户理解在无障碍元素上执行操作将会发生什么。例如,如果在应用提供一个添加按钮,按钮的无障碍标签帮助用户理解点击该按钮在应用中添加值。如果,另一方面,应用允许用户在歌曲名称列表中点击标题播放歌曲,每一个列表行的无障碍标签不会告知用户该结果。为了帮助辅助应用给残障用户提供该信息,每个列表行的合适提示为“播放歌曲”。

遵循以下准则为一个无障碍元素创建提示:

  • 以动词开头,使用非常简洁的短语定义操作的结果,例如“播放歌曲(Plays the song)”“购买项目(Purchases the item)”。
    避免使用命令式的动词作为短语的开头,因为这会让hint提示听起来像个命令。例如,不要创建像“去播放歌曲(Play the song)”“去购买项目(Purchase the item)”类的提示。
  • 不要在hint提示中重复操作方式。例如,不要创建像“点击来播放歌曲(Tap to play the song)”或“点击播放歌曲(Tapping plays the song)”类的提示。
  • 不要在hint提示中重复控件或视图类型。例如,不要创建像“播放此行中的歌曲”“添加联系人姓名的按钮”类的提示。

可获得性

在iOS3.0及更高的版本中可获得。

1.2.5 accessibilityLabel 属性

一个简洁的标签,使用本地语言标识无障碍元素。

声明

SWIFTvar accessibilityLabel: String? 
OBJECTIVE-C@property(nonatomic, copy) NSString *accessibilityLabel

简介

该属性的默认值是nil,除非接收者是个UIKit控件,在该情景下,该属性的值直接从控件标题(title)中获取。

注意:如果在一个UISegmentedControl中呈现UIImage对象,为每一个图像设置该属性保证该部分是正常可访问的。

如果实现一个自定义控件或视图,或在UIKit控件上展示一个自定义的图标,设置该属性保证无障碍元素有合适的标签。如果一个无障碍元素没有呈现一个可描述的标签,设置该属性来提供一个简短、本地化的标签,简洁标识该元素。例如,一个“播放音乐”的按钮可能会呈现一个图标告知视觉用户它的作用。为了做到可访问,但是,该按钮应该有一个无障碍label“播放”或“播放音乐”,这样辅助应用可以将该信息提供给残障用户。注意,但是,label应该不能包含控件类型(例如,按钮),因为该信息被包含在与无障碍元素相关联的特性(trait)中。

可获得性

在iOS3.0及更高的版本中可获得。

1.2.6 accessibilityLanguage 属性

用于朗读无障碍元素标签、值和提示的语言。

声明

SWIFTvar accessibilityLanguage: String?
OBJECTIVE-C@property(nonatomic, strong) NSString *accessibilityLanguage

简介

该属性的默认值为nil。如果未设置语言,使用用户当前的语言设置。

如果需要设置该属性,保证使用语言ID标签,该ID标签遵循BCP 47 规范定义的格式。

可获得性

在iOS4.0及更高的版本中可获得。

1.2.7 accessibilityPath 属性

在屏幕坐标中,元素的路径。

声明

SWIFT@NSCopying var accessibilityPath: UIBezierPath?
OBJECTIVE-C@property(nonatomic, copy) UIBezierPath *accessibilityPath

简介
该属性的默认值是nil。如果未设置路径,无障碍矩形边框被用来突显元素。

当为该属性指定一个值,辅助技术使用指定的路径对象(代替无障碍边框)突显元素。

可获得性

在iOS7.0及更高的版本中可获得。

1.2.8 accessibilityTraits 属性

无障碍特性的组合,这些特性能够最好地描述无障碍元素的特征。

声明

SWIFTvar accessibilityTraits: UIAccessibilityTraits
OBJECTIVE-C@property(nonatomic) UIAccessibilityTraits accessibilityTraits

简介

该属性的默认值是UIAccessibilityTraitNone,除非接收者是个UIKit控件,在该情景下,该属性的值是与控件相关联特性的标准设置。

如果实现一个自定义控件或视图,开发者需要去选择能够最好地描述该对象特征的所有无障碍特性,然后在它父类的特性(换句话说,使用super.accessibilityTraits)中通过执行一个OR操作整合这些无障碍特性。特性的完全列表,详见Accessibility Traits。

可获得性

在iOS3.0及更高的版本中可获得。

1.2.9 accessibilityValue 属性

无障碍元素的值,使用本地化语言。

简介

SWIFTvar accessibilityValue: String?
OBJECTIVE-C@property(nonatomic, copy) NSString *accessibilityValue

简介

该属性的默认值为nil,除非该接收者是个UIKit控件,在这种情况下,该属性呈现的是控件的值,与控件的标签不同。

当一个无障碍元素有一个静态的标签和一个动态的值,设置该属性的返回值。例如,一个呈现文本域的无障碍元素有标签“Message”,但该无障碍元素的值是当前文本域中的文本。

可获得性

在iOS3.0及更高的版本中可获得。

1.2.10 accessibilityViewIsModal 属性

一个布尔值,标识出VoiceOver是否应该忽略视图内的接收者的兄弟元素。

声明

SWIFTvar accessibilityViewIsModal: Bool
OBJECTIVE-C@property(nonatomic) BOOL accessibilityViewIsModal

简介

该属性的默认值是NO。当该属性的值为YES时,VoiceOver忽略接收视图兄弟视图内的元素。

例如,在一个窗口中包含兄弟视图A和B,在视图B上设置accessibilityViewIsModal为YES,VoiceOver会忽略视图A中的元素。另一方面,如果视图B包含一个子视图C,且在视图C上设置accessibilityViewIsModal为YES,VoiceOver不会忽略视图A中的元素。

可获得性

在iOS5.0及更高的版本中可获得。

1.2.11 shouldGroupAccessibilityChildren 属性

一个布尔值,标识出VoiceOver是否应该将接收者的子元素组合在一起,不管它们在屏幕上的位置如何。

简介

SWIFTvar shouldGroupAccessibilityChildren: Bool
OBJECTIVE-C@property(nonatomic) BOOL shouldGroupAccessibilityChildren

讨论

该属性的默认值为NO。

例如,假设一个垂直展示项目的应用。正常情况下,VoiceOver可以在水平行中导航这些项目。在垂直展示项目的父级视图中设置该属性的值为YES,这会让VoiceOver遵守应用的分组并正确导航它们。

可获得性

在iOS6.0及更高的版本中可获得。

1.2.12 accessibilityNavigationStyle 属性

适用于对象及其元素的导航样式。

声明

SWIFTvar accessibilityNavigationStyle: UIAccessibilityNavigationStyle
OBJECTIVE-C@property(nonatomic) UIAccessibilityNavigationStyle accessibilityNavigationStyle

简介
为了导航其元素,一些辅助技术让用户选择父视图或容器。该属性控制该行为是否适用于当前对象。开关控件(Switch Control)使用该技术,但是VoiceOver和其他辅助技术不会。

该属性的默认值为UIAccessibilityNavigationStyleAutomatic。

可获得性

在iOS8.0及更高的版本中可获得。

二、数据类型

2.1 UIAccessibilityTraits

一个面具,包含无障碍特性的或(OR)组合,能够最好地描述一个无障碍元素的特征。

声明

SWIFTtypealias UIAccessibilityTraits = UInt64
OBJECTIVE-Ctypedef uint64_t UIAccessibilityTraits;

导入语句

OBJECTIVE-C@import UIKit;
SWIFTimport UIKit

可获得性

在iOS3.0及更高的版本中可获得。

2.2 UIAccessibilityZoomType

可以起作用的系统缩放类型。

声明

SWIFTenum UIAccessibilityZoomType : Int {    case InsertionPoint}
OBJECTIVE-Ctypedef enum {   UIAccessibilityZoomTypeInsertionPoint,} UIAccessibilityZoomType;

常量

  • UIAccessibilityZoomTypeInsertionPoint
    系统缩放类型是在文本插入点。
    在iOS5.0及更高的版本中可获得。

导入语句

OBJECTIVE-C@import UIKit;
SWIFTimport UIKit

可获得性

在iOS5.0及更高的版本中可获得。

2.3 UIAccessibilityNotifications

无障碍应用可以发送的通知。

声明

SWIFTtypealias UIAccessibilityNotifications = UInt32
OBJECTIVE-Ctypedef uint32_t UIAccessibilityNotifications;

导入语句

OBJECTIVE-C@import UIKit;
SWIFTimport UIKit

可获得性

在iOS3.0及更高的版本中可获得。

三、常量

3.1 无障碍特性(Accessibility Traits)

无障碍特性,用来告知辅助应用一个无障碍元素怎样行为或者应该怎样被对待。

声明

SWIFTvar UIAccessibilityTraitNone: UIAccessibilityTraitsvar UIAccessibilityTraitButton: UIAccessibilityTraitsvar UIAccessibilityTraitLink: UIAccessibilityTraitsvar UIAccessibilityTraitSearchField: UIAccessibilityTraitsvar UIAccessibilityTraitImage: UIAccessibilityTraitsvar UIAccessibilityTraitSelected: UIAccessibilityTraitsvar UIAccessibilityTraitPlaysSound: UIAccessibilityTraitsvar UIAccessibilityTraitKeyboardKey: UIAccessibilityTraitsvar UIAccessibilityTraitStaticText: UIAccessibilityTraitsvar UIAccessibilityTraitSummaryElement: UIAccessibilityTraitsvar UIAccessibilityTraitNotEnabled: UIAccessibilityTraitsvar UIAccessibilityTraitUpdatesFrequently: UIAccessibilityTraitsvar UIAccessibilityTraitStartsMediaSession: UIAccessibilityTraitsvar UIAccessibilityTraitAdjustable: UIAccessibilityTraitsvar UIAccessibilityTraitAllowsDirectInteraction: UIAccessibilityTraitsvar UIAccessibilityTraitCausesPageTurn: UIAccessibilityTraitsvar UIAccessibilityTraitHeader: UIAccessibilityTraits
OBJECTIVE-CUIAccessibilityTraits UIAccessibilityTraitNone;UIAccessibilityTraits UIAccessibilityTraitButton;UIAccessibilityTraits UIAccessibilityTraitLink;UIAccessibilityTraits UIAccessibilityTraitSearchField;UIAccessibilityTraits UIAccessibilityTraitImage;UIAccessibilityTraits UIAccessibilityTraitSelected;UIAccessibilityTraits UIAccessibilityTraitPlaysSound;UIAccessibilityTraits UIAccessibilityTraitKeyboardKey;UIAccessibilityTraits UIAccessibilityTraitStaticText;UIAccessibilityTraits UIAccessibilityTraitSummaryElement;UIAccessibilityTraits UIAccessibilityTraitNotEnabled;UIAccessibilityTraits UIAccessibilityTraitUpdatesFrequently;UIAccessibilityTraits UIAccessibilityTraitStartsMediaSession;UIAccessibilityTraits UIAccessibilityTraitAdjustable;UIAccessibilityTraits UIAccessibilityTraitAllowsDirectInteraction;UIAccessibilityTraits UIAccessibilityTraitCausesPageTurn;UIAccessibilityTraits UIAccessibilityTraitHeader;

常量

  • UIAccessibilityTraitNone
    该无障碍元素无特性。
    在iOS3.0及更高的版本中可获得。

  • UIAccessibilityTraitButton
    该无障碍元素应该被当作一个按钮。
    在iOS3.0及更高的版本中可获得。

  • UIAccessibilityTraitLink
    该无障碍元素应该被当作一个链接。
    在iOS3.0及更高的版本中可获得。

  • UIAccessibilityTraitSearchField
    该无障碍元素应该被当作一个搜索框。
    在iOS3.0及更高的版本中可获得。

  • UIAccessibilityTraitImage
    该无障碍元素应该被当作一个图像。
    该特性可以与按钮或链接特性组合使用。
    在iOS3.0及更高的版本中可获得。

  • UIAccessibilityTraitSelected
    该无障碍元素当前已被选定。
    使用该特性描述一个无障碍元素的特征,例如,在一个分段控件中,呈现已选定表行或已选定段。
    在iOS3.0及更高的版本中可获得。

  • UIAccessibilityTraitPlaysSound
    该无障碍元素被激活时播放自己的声音。
    在iOS3.0及更高的版本中可获得。

  • UIAccessibilityTraitKeyboardKey
    该无障碍元素的行为像键盘键。
    在iOS3.0及更高的版本中可获得。

  • UIAccessibilityTraitStaticText
    该无障碍元素应该被当作不能改变的静态文本。
    在iOS3.0及更高的版本中可获得。

  • UIAccessibilityTraitSummaryElement
    当应用启动时,该无障碍元素提供摘要信息。
    使用该属性描述一个无障碍元素的特征,该元素提供当前情况、设置或状态的摘要,例如天气应用中的当前气温。
    在iOS3.0及更高的版本中可获得。

  • UIAccessibilityTraitNotEnabled
    该无障碍元素不可用且不能响应用户交互。
    在iOS3.0及更高的版本中可获得。

  • UIAccessibilityTraitUpdatesFrequently
    该无障碍元素频繁更新其标签或值。
    使用该特性描述一个无障碍元素的特征,该元素频繁更新其标签或值发送更新通知。当想要避免辅助应用处理不断的通知时,和当需要更新信息而轮询改变时,包含该特性。例如,开发者可以使用该属性描述秒表朗读的特征。
    在iOS3.0及更高的版本中可获得。

  • UIAccessibilityTraitStartsMediaSession
    当该无障碍元素被激活时,启动一个媒体对话。
    使用该特性关闭辅助应用的音频输出,例如VoiceOver。在媒体会话期间,媒体会话不应该被打断。例如,当用户录制音频的时候,开发者可以使用该属性静音VoiceOver。
    在iOS4.0及更高的版本中可获得。

  • UIAccessibilityTraitAdjustable
    该无障碍元素的值在一定范围内允许持续调整。
    使用该属性描述一个无障碍元素的特征,用户可以使用持续的行为调整该元素,例如滑块或选择器视图。如果为一个无障碍元素指定了该特性,开发者同时应该在UIAccessibilityAction协议中实现accessibilityIncrement和accessibility Decrement方法。
    在iOS4.0及更高的版本中可获得。

  • UIAccessibilityTraitAllowsDirectInteraction
    该无障碍元素允许VoiceOver用户直接触摸交互。
    使用该特性描述一个无障碍元素的特征,该元素呈现的对象用户可以直接交互,例如呈现钢琴键盘的视图。
    在iOS5.0及更高的版本中可获得。

  • UIAccessibilityTraitCausesPageTurn
    该无障碍元素应该引起自动翻页,当VoiceOver阅读完成当页的文本时。
    使用该特性描述一个无障碍元素的特征,该元素在一系列页面内容中呈现一个页面,例如呈现一本书中的一页。当VoiceOver阅读完成当前页面的内容,调用具有UIAccessibilityScrollDirectionNext属性的accessibilityScroll方法滚动到下一内容页。如果VoiceOver检测到当前页面与先前的页面无差异,停止滚动。
    在iOS5.0及更高的版本中可获得。

  • UIAccessibilityTraitHeader
    该无障碍元素是一个将内容划分为章节的标题,例如导航栏的标题。
    在iOS6.0及更高的版本中可获得。

3.2 通知字典关键值(Notification Dictionary Keys)

被用在通知的userInfo参数字典的关键值。

声明

SWIFTlet UIAccessibilityAnnouncementKeyStringValue: Stringlet UIAccessibilityAnnouncementKeyWasSuccessful: String
OBJECTIVE-CNSString *const UIAccessibilityAnnouncementKeyStringValue;NSString *const UIAccessibilityAnnouncementKeyWasSuccessful;

常量

  • UIAccessibilityAnnouncementKeyStringValue
    已完成通知的文本。
    在iOS6.0及更高的版本中可获得。

  • UIAccessibilityAnnouncementKeyWasSuccessful
    标识通知是否发送成功。
    该关键值是个被解释为布尔值的NSNumber对象。
    在iOS6.0及更高的版本中可获得。

3.3 属性字符串的语音属性(Speech Attributes for Attributed Strings)

开发者可以将该属性应用到到属性字符串文本,用来修改文本是怎样发声的。

声明

SWIFTlet UIAccessibilitySpeechAttributePunctuation: Stringlet UIAccessibilitySpeechAttributeLanguage: Stringlet UIAccessibilitySpeechAttributePitch: String
OBJECTIVE-CNSString *const UIAccessibilitySpeechAttributePunctuation;NSString *const UIAccessibilitySpeechAttributeLanguage;NSString *const UIAccessibilitySpeechAttributePitch;

常量

  • UIAccessibilitySpeechAttributePunctuation
    该关键值是个被解释为布尔值的NSNumber对象。当该值为YES时,文本中所有标点符号都会被朗读出来。开发者可以在代码区,或其他与标点有关的地方,使用该属性。
    在iOS7.0及更高的版本中可获得。

  • UIAccessibilitySpeechAttributeLanguage
    该关键值是一个包含BCP 47语言编码的NSString对象。当将该值应用于字符串文本,特定语言的规则会控制字符串是怎样被发音的。
    在iOS7.0及更高的版本中可获得。

  • UIAccessibilitySpeechAttributePitch
    该关键值是一个包含范围0.0到2.0的浮点型数值的NSNumber对象。该值标明文本是否应该使用较高或较低的音调读出,而不是使用默认音调。该属性的默认值是1.0,代表一个正常音调。值在0.0到1.0之间时使用较低的音调,值在1.0到2.0之间时使用较高的音调。
    在iOS7.0及更高的版本中可获得。

3.4 辅助技术标识(Assistive Technology Identifiers)

当暂停或重启辅助技术时,可以使用该标识。

声明

SWIFTlet UIAccessibilityNotificationSwitchControlIdentifier: String
OBJECTIVE-CNSString *const UIAccessibilityNotificationSwitchControlIdentifier;

常量

  • UIAccessibilityNotificationSwitchControlIdentifier
    开关控制技术。
    该技术允许运动障碍用户使用独立物理按钮访问应用。当启用该技术,iOS光标在屏幕上元素间循环。用户点击开关可以操作光标下的元素。
    在iOS8.0及更高的版本中可获得。

3.5 UIAccessibilityNavigationStyle

描述一个对象元素应该怎样被辅助技术导航的常量。

声明

SWITFenum UIAccessibilityNavigationStyle : Int {    case Automatic    case Separate    case Combined}
OBJECTIVE-Ctypedef enum UIAccessibilityNavigationStyle : NSInteger {   UIAccessibilityNavigationStyleAutomatic = 0,   UIAccessibilityNavigationStyleSeparate = 1,   UIAccessibilityNavigationStyleCombined = 2,} UIAccessibilityNavigationStyle;

常量

  • UIAccessibilityNavigationStyleAutomatic
    辅助技术自动判定接收者的元素应该怎样被导航。
    此为默认值。
    在iOS8.0及更高的版本中可获得。

  • UIAccessibilityNavigationStyleSeparate
    接收者的元素应该作为独立项目被导航。
    在iOS8.0及更高的版本中可获得。

  • UIAccessibilityNavigationStyleCombined
    接收者的元素应该被组合且被作为一个独立项目进行导航。
    在iOS8.0及更高的版本中可获得。

导入语句

OBJECTIVE-C@import UIKit;
SWIFTimport UIKit

可获得性

在iOS8.0及更高的版本中可获得。

四、通知

4.1 UIAccessibilityAnnouncementNotification

当通知需要被传递到辅助技术时,由应用发送的通知。

该通知包含一个参数,该参数是个包含通知的NSString对象。一个辅助技术输出的通知文本被包含在该参数中。

使用该通知提供关于事件的无障碍信息,该事件不会更新应用用户界面或只简单更新用户界面。

使用UIAccessibilityPostNotification发送该通知。

声明

SWIFTvar UIAccessibilityAnnouncementNotification: UIAccessibilityNotifications

导入语句

OBJECTIVE-C@import UIKit;
SWIFTimport UIKit

可获得性

在iOS4.0及更高的版本中可获得。

4.2 UIAccessibilityAnnouncementDidFinishNotification

当系统阅读完成一个通知的时候,由UIKit发送的通知。

该参数是个具有两个关键值的字典,参数为UIAccessibilityAnnouncementKeyStringValue 和UIAccessibilityAnnouncementKeyWasSuccessful。使用默认通知中心观察该通知。

声明

SWIFT let UIAccessibilityAnnouncementDidFinishNotification: String

导入语句

OBJECTIVE-C@import UIKit;
SWIFTimport UIKit

可获得性

在iOS6.0及更高的版本中可获得。

4.3 UIAccessibilityBoldTextStatusDidChangeNotification

当系统粗体文本设置改变时,由UIKit发送的通知。

该通知不包含参数,使用默认通知中心观察该通知。

声明

SWIFT let UIAccessibilityBoldTextStatusDidChangeNotification: String

导入语句

OBJECTIVE-C@import UIKit;
SWIFTimport UIKit

可获得性

在iOS8.0及更高的版本中可获得。

4.4 UIAccessibilityClosedCaptioningStatusDidChangeNotification

当闭合字幕设置改变时,由UIKit发送的通知。

该通知不包含参数。使用默认通知中心观察该通知。

声明

SWIFT let UIAccessibilityClosedCaptioningStatusDidChangeNotification: String

导入语句

OBJECTIVE-C@import UIKit;
SWIFTimport UIKit

可获得性

在iOS5.0及更高的版本中可获得。

4.5 UIAccessibilityDarkerSystemColorsStatusDidChangeNotification

当系统的变暗颜色设置改变时,由UIKit发送的通知。

该通知不包含参数。使用默认通知中心观察该通知。

声明

SWIFT let UIAccessibilityDarkerSystemColorsStatusDidChangeNotification:String

导入语句

OBJECTIVE-C@import UIKit;
SWIFTimport UIKit

可获得性

在iOS8.0及更高的版本中可获得。

4.6 UIAccessibilityGrayscaleStatusDidChangeNotification

当系统的灰阶设置改变时,由UIKit发送的通知。

该通知不包含参数。使用默认通知中心观察该通知。

声明

SWIFT let UIAccessibilityGrayscaleStatusDidChangeNotification:String

导入语句

OBJECTIVE-C@import UIKit;
SWIFTimport UIKit

可获得性

在iOS8.0及更高的版本中可获得。

4.7 UIAccessibilityGuidedAccessStatusDidChangeNotification

当系统的引导访问设置改变时,由UIKit发送的通知。

该通知不包含参数。使用默认通知中心观察该通知。

使用UIAccessibilityIsGuidedAccessEnabled函数判定当前引导访问是否可用。

声明

SWIFT let UIAccessibilityGuidedAccessStatusDidChangeNotification:String

导入语句

OBJECTIVE-C@import UIKit;
SWIFTimport UIKit

可获得性

在iOS6.0及更高的版本中可获得。

4.8 UIAccessibilityInvertColorsStatusDidChangeNotification

当反转颜色设置被改变时,由UIKit发送的通知。

该通知不包含参数。使用默认通知中心观察该通知。

使用UIAccessibilityIsInvertColorsEnabled函数判定当前是不是反转色。

声明

SWIFT let UIAccessibilityInvertColorsStatusDidChangeNotification:String

导入语句

OBJECTIVE-C@import UIKit;
SWIFTimport UIKit

可获得性

在iOS6.0及更高的版本中可获得。

4.9 UIAccessibilityLayoutChangedNotification

当屏幕布局改变时,例如当一个元素出现或消失时,由应用发送的通知。

该通知包含一个参数,该参数是一个VoiceOver朗读的NSString对象,或者是一个VoiceOver将要移至的无障碍元素。使用UIAccessibilityPostNotification函数发送该通知。

声明

SWIFT var UIAccessibilityLayoutChangedNotification: UIAccessibilityNotifications

导入语句

OBJECTIVE-C@import UIKit;
SWIFTimport UIKit

可获得性

在iOS3.0及更高的版本中可获得。

4.10 UIAccessibilityMonoAudioStatusDidChangeNotification

当系统音频从立体声变为单声道时,由UIKit发送的通知。

该通知不包含参数,使用默认通知中心观察该通知。

声明

SWIFT let UIAccessibilityMonoAudioStatusDidChangeNotification: String

导入语句

OBJECTIVE-C@import UIKit;
SWIFTimport UIKit

可获得性

在iOS5.0及更高的版本中可获得。

4.11 UIAccessibilityPageScrolledNotification

当滚动操作已经完成并且accessibilityScroll:方法被调用时,由应用发送的通知。

该通知包含一个参数,该参数是一个包含新滚动位置描述的NSString对象。辅助技术输出的是被包含在该参数中的描述字符串。

在用户施行VoiceOver滚动手势之后,使用该通知提供屏幕内容的自定义信息。例如,一个基于tab的应用可能提供一个字符串,例如“Tab 3 of 5”,或一个在多个页面中展示信息的应用可能提供一个字符串,例如“Page 19 of 27”。

当重复接收相同滚动位置字符串时,辅助技术告知用户已经到达边框或边界。
使用UIAccessibilityPostNotification函数发送该通知。

声明

SWIFT var UIAccessibilityPageScrolledNotification: UIAccessibilityNotifications

导入语句

OBJECTIVE-C@import UIKit;
SWIFTimport UIKit

可获得性

在iOS4.2及更高的版本中可获得。

4.12 UIAccessibilityPauseAssistiveTechnologyNotification

当想要暂停辅助技术操作时,发送该通知。

发送该通知时,使用参数指定要暂停的辅助技术。例如,当APP在播放动画时,可能要在开关控件中暂停扫描。开发者必须发送一个UIAccessibilityResumeAssistiveTechnologyNotification通知恢复辅助技术的操作,平衡该通知。使用UIAccessibilityPostNotification函数发送该通知。

声明

SWIFT var UIAccessibilityPauseAssistiveTechnologyNotification: UIAccessibilityNotifications

导入语句

OBJECTIVE-C@import UIKit;
SWIFTimport UIKit

可获得性

在iOS8.0及更高的版本中可获得。

4.13 UIAccessibilityReduceMotionStatusDidChangeNotification

当系统减少运动设置改变时,由UIKit发送的通知。

该通知不包含参数。使用默认通知中心观察该通知。

声明

SWIFT let UIAccessibilityReduceMotionStatusDidChangeNotification: String

导入语句

OBJECTIVE-C@import UIKit;
SWIFTimport UIKit

可获得性

在iOS8.0及更高的版本中可获得。

4.14 UIAccessibilityReduceTransparencyStatusDidChangeNotification

当系统的降低透明度设置发生改变时,由UIKit发送的通知。

该通知不包含参数。使用默认通知中心观察该通知。

声明

SWIFT let UIAccessibilityReduceTransparencyStatusDidChangeNotification: String

导入语句

OBJECTIVE-C@import UIKit;
SWIFTimport UIKit

可获得性

在iOS8.0及更高的版本中可获得。

4.15 UIAccessibilityResumeAssistiveTechnologyNotification

发送该通知暂时恢复辅助技术的操作。

发送该通知时,使用参数指定要恢复的辅助技术。开发者必须发送该通知平衡先前发送的UIAccessibilityPauseAssistiveTechnologyNotification通知。使用UIAccessibilityPostNotification函数发送该通知。

声明

SWIFT var UIAccessibilityResumeAssistiveTechnologyNotification : UIAccessibilityNotifications

导入语句

OBJECTIVE-C@import UIKit;
SWIFTimport UIKit

可获得性

在iOS8.0及更高的版本中可获得。

4.16 UIAccessibilityScreenChangedNotification

当一个新的视图出现,并覆盖屏幕的主要部分时,由应用发送的通知。

该通知包含一个参数,该参数是一个VoiceOver可以读出的NSString对象,或VoiceOver将要移动至的一个无障碍元素。使用UIAccessibilityPostNotification函数发送该通知。

声明

SWIFT var UIAccessibilityScreenChangedNotification: UIAccessibilityNotifications

导入语句

OBJECTIVE-C@import UIKit;
SWIFTimport UIKit

可获得性

在iOS3.0及更高的版本中可获得。

4.17 UIAccessibilitySpeakScreenStatusDidChangeNotification

当系统朗读屏幕设置发生改变时,由UIKit发送的通知。

该通知不包含参数。使用默认通知中心观察该通知。

声明

SWIFT let UIAccessibilitySpeakScreenStatusDidChangeNotification: String

导入语句

OBJECTIVE-C@import UIKit;
SWIFTimport UIKit

可获得性

在iOS8.0及更高的版本中可获得。

4.18 UIAccessibilitySpeakSelectionStatusDidChangeNotification

当系统朗读选择设置发生改变时,由UIKit发送的通知。

该通知不包含参数。使用默认通知中心观察该通知。

声明

SWIFT let UIAccessibilitySpeakSelectionStatusDidChangeNotification:String

导入语句

OBJECTIVE-C@import UIKit;
SWIFTimport UIKit

可获得性

在iOS8.0及更高的版本中可获得。

4.19 UIAccessibilitySwitchControlStatusDidChangeNotification

当系统开关控件设置发生改变时,由UIKit发送的通知。

该通知不包含参数。使用默认通知中心观察该通知。

声明

SWIFT let UIAccessibilitySwitchControlStatusDidChangeNotification:String

导入语句

OBJECTIVE-C@import UIKit;
SWIFTimport UIKit

可获得性

在iOS8.0及更高的版本中可获得。

4.20 UIAccessibilityVoiceOverStatusChanged

当VoiceOver启动或停止时,由UIKit发送的通知。该通知不包含参数。

使用该通知为VoiceOver用户自定义应用用户界面。例如,如果要展示一个UI元素,且该元素简单覆盖了用户界面的其他部分,为VoiceOver用户要提供一致性的呈现,但对于非VoiceOver用户,允许它消失。开发者可以使用UIAccessibilityIsVoiceOverRunning函数判定当前VoiceOver是否在运行。

使用默认通知中心观察该通知。

声明

SWIFT let UIAccessibilityVoiceOverStatusChanged:String

导入语句

OBJECTIVE-C@import UIKit;
SWIFTimport UIKit

可获得性

在iOS4.0及更高的版本中可获得。

1 0