Ich habe eine UITableView
, die ich in loadView
erstelle. Eine der Sachen, die ich in loadView
mache, ist ein UIView
zu erstellen, um als Tabellenkopf zu fungieren und einen UIImageView
hineinzustopfen. Die Bildansicht enthält ein Bild, das ein stilisierter Titel ist. Daher möchte ich eine Eingabehilfe für VoiceOver-Benutzer hinzufügen. Ich kann VoiceOver jedoch nicht auf das Bild "fokussieren", um das Etikett zu lesen, und der Eingabehilfen-Inspektor reagiert nicht auf das Klicken auf das Bild im Simulator. Mein (abgekürzter) Code folgt:
Ich bin in gdb durchgetreten und accessibilityLabelForTitleImage
gibt eine Zeichenkette zurück. po [titleImageView accessibilityLabel]
gibt die richtige Zeichenfolge aus, aber ich kann mich immer noch nicht auf die Bildansicht konzentrieren. Beachten Sie, dass die Ansichten selbst angezeigt werden und entsprechend reagieren.
Vermisse ich etwas? Kann VoiceOver eine Bildansicht bestätigen?
In Voice-Over, um ein Element zugänglich zu machen: -
Sie müssen die setIsAccessibilityElement-Eigenschaft als true setzen, die ich in Ihrem Code nicht finde.
Der andere wichtige Punkt ist, dass Kinderelemente (Subviews) zugänglich sein müssen, die Sie separat zugänglich machen müssen, während der Elternteil nicht zugänglich sein soll (Sie müssen dies auch angeben).
Implementieren Sie das UIAccessibilityContainer-Protokoll in Ihrer benutzerdefinierten Zelle.
Es wird eine große Geschichte sein, wenn ich weitermache. Bitte beziehen Sie sich auf Sprachausgabe von Apple .
Hoffe, das hilft.
Ich habe KIF zum Testen meiner iOS-App verwendet. In meiner Tabellenansicht habe ich tableview.accessibilityIdentifier anstelle von tableview.accessibilityLabel einen Wert zugewiesen. Es hat für mich funktioniert. Willst du es versuchen?
Tags und Links objective-c ios voiceover cocoa-touch accessibility