Nat*_*ate 3 xcode objective-c ios ios-ui-automation
我试图围绕一些核心图形逻辑编写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);
Run Code Online (Sandbox Code Playgroud)
在核心图像上设置
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);
Run Code Online (Sandbox Code Playgroud)
无论哪种方式都会产生相同的结果.这是试图访问信息的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)
Run Code Online (Sandbox Code Playgroud)
这是DOM的相关部分
UIAImage "(null)" {{0, 149}, {316, 55}}
Run Code Online (Sandbox Code Playgroud)
有没有办法在使用核心图形绘制的图像上设置辅助功能标签/标识符/值?
像属性accessibilityLabel只会工作与像UIKit的控件使用时UIView,UIImageView等等.因为你的形象是不是一个真正的UIView,你将需要使你的容器视图或视图控制器实现提供额外的信息,UIKit的UIAccessibilityContainer协议.
有关详细信息,请参阅"适用于iOS的辅助功能编程指南",尤其是使自定义容器视图的内容可访问.
| 归档时间: |
|
| 查看次数: |
4632 次 |
| 最近记录: |