2013-03-07 11 views
8
hinzu

Gibt es eine Möglichkeit, mit der nativen Unicast-Unterstützung von VoiceOver für iOS zu kommunizieren? Wir haben eine Anwendung, die zugänglich sein muss, und wir sind nicht sicher, wie wir vorgehen sollen.So fügen Sie Unity3d für iOS

Das Erstellen eines eigenen benutzerdefinierten VoiceOver ist nicht möglich, da wir Sprachunterstützung benötigen. Daher müssen wir nativ arbeiten. Unser Bauchgefühl sagt uns, dass wir mit iOS über ein Plugin kommunizieren sollen, aber es scheint, dass iOS-Hardware nicht in der Lage ist, Unity-Taps zu erfassen, aber es scheint auch einige unserer Gesten zu überschreiben.

Jeder Vorschlag wäre willkommen.

+0

Das sieht nützlich: https://www.assetstore.unity3d.com/en/#!/content/9555 –

Antwort

0

Unity3d unterstützt die .ipa-Dateien nicht, die von VoiceOver verwendet werden, um Hooks bereitzustellen, mit denen die Funktion funktionieren kann. Daher kann die Funktion nicht direkt verwendet werden, um eine Anwendung leichter zugänglich zu machen.

Daher muss eine Methode zur Entwicklung eines auf VoiceOver basierenden Systems innerhalb von Unity verwendet werden, das einige der aktuellen VoiceOver-Konventionen verwenden kann - d. H. Die VoiceOver-Methoden zum Verarbeiten von Seiten und Anwendungen in Unity neu erstellen.

Abgesehen davon bin ich mir nicht sicher, was Sie tun könnten, ohne den "langen Weg" zur Erstellung Ihrer eigenen Sprachunterstützung mit ähnlichen Eingabehilfen für VoiceOver zu gehen.

+0

Was meinst du mit „Unity3d nicht die .ipa Dateien nicht unterstützt“? Eine ipa-Datei ist nur eine Zip-Datei. –

1

Es gibt einige Notiz here

Im Allgemeinen ist, müssen Sie nicht Zugänglichkeit Elemente für Elemente in der Anwendung, da Standard UIKit Kontrollen und Ansichten zugänglich sind standardmäßig erstellen. Wenn Sie jedoch über eine Ansicht verfügen, die Nichtansichtselemente enthält, z. B. Symbole oder Textbilder, auf die Benutzer mit Behinderungen zugreifen müssen, erstellen Sie Barrierefreiheitselemente, um sie darzustellen. In diesem Fall sollte die umschließende Ansicht das informelle UIAccessibilityContainer-Protokoll implementieren und diese Methode verwenden, um ein Eingabehilfenelement zu erstellen, das jedes Element darstellt, das einer assistiven Anwendung zugänglich gemacht werden soll.

und here

Das UIAccessibilityContainer informelle Protokoll bietet eine Möglichkeit für UIView Unterklassen ausgewählte Komponenten zugänglich als separate Elemente zu machen. Beispielsweise kann eine Ansicht Symbole oder gezeichneten Text enthalten, die für Endbenutzer als separate Elemente angezeigt werden und als separate Elemente fungieren. Da diese Komponenten jedoch nicht als UIView-Instanzen implementiert sind, sind sie für Benutzer mit Behinderungen nicht automatisch zugänglich. Daher sollte eine solche Containeransicht die UIAccessibilityContainer-Methoden implementieren, um Eingabehilfeinformationen zu diesen Komponenten für assistive Anwendungen wie VoiceOver bereitzustellen.

Ich bin mit der Einheit nicht vertraut sich, aber das ist scheint möglich zu sein Blick zu hacken enthält Zugänglichkeit zu unterstützen - Sie stellen von UIAccessibilityElemets aufbauen können, die aktuell sichtbaren Elemente auf dem Bildschirm darstellt.

+0

Richtig, aber wie repräsentieren Sie Elemente aus Unity als 'UIView'? –

+0

Nun, Sie können jedes Unity-Element dem Objekt der 'UIAccessibilityElemet'-Klasse zuordnen. Und dann fügen Sie sie zur obersten Ansicht der Anwendung hinzu –

-1

Leider können Unity und VoiceOver nicht nativ zusammen arbeiten, da Unity für das gesamte Rendering - einschließlich der Benutzeroberfläche - zuständig ist. Deshalb kann VoiceOver oder ein anderer Bildschirmleser nicht auf die Benutzeroberfläche zugreifen und sie zugänglich machen. Wirklich Ihre einzige Option ist, wie Sie bereits erwähnt haben, den weiten Weg zu nehmen und die gleiche Funktionalität innerhalb von Unity zu implementieren. Sie können dies entweder selbst implementieren oder ein Plugin verwenden, das dies für Sie erledigt.

Es ist ein Plugin verfügbar, das die Screenreader-Funktionalität für Unity UI neu erstellt.Es funktioniert wie VoiceOver und TalkBack und verwendet die native VoiceOver-Sprache für die Ausgabe von Text in Sprache. https://www.assetstore.unity3d.com/en/#!/content/87935

+1

Willkommen bei Stack Overflow! Nur eine Verknüpfung zu Ihrer eigenen Bibliothek oder Tutorial ist keine gute Antwort. Verlinken, erklären, warum es das Problem löst, Code zur Verfügung stellen und ablehnen, dass du es geschrieben hast, ist eine bessere Antwort. Siehe: [** Was bedeutet "gute" Eigenwerbung? **] (// meta.stackexchange.com/q/182212) –

+0

Sehr wahr, ich habe den Beitrag bearbeitet, um weitere Erklärungen hinzuzufügen. –

Verwandte Themen