Skip to content

Instantly share code, notes, and snippets.

@niw
Last active June 28, 2020 06:51
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save niw/1a335f62e93807b62f9a2b95858a7463 to your computer and use it in GitHub Desktop.
Save niw/1a335f62e93807b62f9a2b95858a7463 to your computer and use it in GitHub Desktop.
UITextView accessibility is unique

UITextView and Accessibility

isAccessibilityElement

isAccessibilityElement は Voice Over などが稼働して、UIKit.axbundleが読み込まれて始めて true になる。

  • See also:
    • -[UITextViewAccessibility isAccessibilityElement] (UIKit.axbundle)

isEditable

UITextViewisEditablefalse の場合 (isEditable か、isSelectablefalse)、UITextView はラベルのように振舞う。 その際、ローター用にパラグラフごとの Accessibility Element が生成されて、UITextViewは Accessibility Container になる。 その結果、isAccessibilityElementfalse であっても、Voice Over の対象になる。

  • See also:
    • -[UITextViewAccessibility accessibilityElements] (UIKit.axbundle)
    • -[UITextViewAccessibility _accessibilityTextViewShouldBreakUpParagraphs] (UIKit.axbundle)
    • -[NSObject _accessibilityTextViewShouldBreakUpParagraphs] (UIAccessibility.framework)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment