3

いくつかのコア グラフィックス ロジックを中心に UIAutomation テストを作成しようとしています。現在、コア グラフィックスを使用して画像を描画しています。UIAutomation テストでその存在を確認できるように、画像にアクセシビリティ ラベル/識別子/値を設定しようとしていますが、何をしても DOM のアクセシビリティ ラベル/識別子/値を取得できません私のテスト。私が試したことは次のとおりです。

画像に直接設定します。

UIImage *uiImage = [UIImage imageWithData:bfCaseStudy.image];
uiImage.isAccessibilityElement = YES;
uiImage.accessibilityLabel = bfCaseStudy.name;
uiImage.accessibilityValue = bfCaseStudy.name;
uiImage.accessibilityIdentifier = bfCaseStudy.name;

CGContextDrawImage(context, [self rectForAttr:bfCaseStudy], uiImage.CGImage);

コア イメージの設定

UIImage *uiImage = [UIImage imageWithData:bfCaseStudy.image];
uiImage.CIImage.isAccessibilityElement = YES;
uiImage.CIImage.accessibilityLabel = bfCaseStudy.name;
uiImage.CIImage.accessibilityValue = bfCaseStudy.name;

CGContextDrawImage(context, [self rectForAttr:bfCaseStudy], uiImage.CGImage);

どちらの方法でも同じ結果が得られます。情報にアクセスしようとしている UIAutomation コードを次に示します。

UIALogger.logDebug(bookTwoHelper.mainWindow.images()[5].label());
UIALogger.logDebug(bookTwoHelper.mainWindow.images()[5].name());
UIALogger.logDebug(bookTwoHelper.mainWindow.images()[5].value());

Debug: (2013-02-25 16:06:33 +0000) - (null)
Debug: (2013-02-25 16:06:33 +0000) - (null)
Debug: (2013-02-25 16:06:33 +0000) - (null)

これがDOMの関連部分です

UIAImage "(null)" {{0, 149}, {316, 55}}

コア グラフィックスを使用して描画された画像にアクセシビリティ ラベル/識別子/値を設定する方法はありますか?

4

1 に答える 1

6

のようなプロパティは、などaccessibilityLabelのUIKitコントロールで使用した場合にのみ機能します。画像は実際のものではないため、コンテナビューまたはビューコントローラにプロトコルを実装させることにより、UIKitに追加情報を提供する必要があります。UIViewUIImageViewUIViewUIAccessibilityContainer

詳細、特にカスタムコンテナビューのコンテンツをアクセシブルにする方法については、 iOSのアクセシビリティプログラミングガイドを参照してください。

于 2013-02-25T17:11:15.573 に答える