legt eine accessibilityLabel für eine UIImageView fest, die im UITableView-Header enthalten ist

8

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:

%Vor%

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?

    
kevboh 17.05.2012, 20:16
quelle

2 Antworten

13

In Voice-Over, um ein Element zugänglich zu machen: -

  1. Sie müssen die setIsAccessibilityElement-Eigenschaft als true setzen, die ich in Ihrem Code nicht finde.

  2. 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).

  3. 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.

    
Abhishek Singh 17.05.2012, 20:46
quelle
3

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?

    
user1494912 05.06.2014 03:16
quelle