如何在UITabBar的按钮上设置accessibilityIdentifier

时间:2016-11-03 20:48:19

标签: ios objective-c swift uitabbar

与标题状态一样,您如何以编程方式在accessibilityIdentifier的按钮上设置UITabBar?我目前正在尝试设置UITabBarItem的{​​{1}},然后再将其添加到标签栏,但这似乎没有传到按钮上。

如何在页面上显示的实际按钮上设置accessibilityIdentifier

2 个答案:

答案 0 :(得分:1)

当我遇到同样的问题时,我最终在底层的UITabBarButton上设置了标识符(不确定苹果是否会反对这个...) 您需要首先使用UITabBarItem及其标识符设置UITabbar,然后:

//Set the tabbar items and their identifiers first, then, copy them on the underlying UITabBarButton using this code
int index = 0;
for (UIControl *control in controller.tabBar.subviews)
{
    if ([control isKindOfClass:UIControl.class] && index < tabBarController.tabBar.items.count)
    {
        control.accessibilityIdentifier = controller.tabBar.items[index].accessibilityIdentifier;
        index++;
    }
}

答案 1 :(得分:0)

对于UI测试,我在视图控制器中按如下方式进行:

self.tabBarItem.accessibilityIdentifier = @"NewRecordTab";
在Swift中

将是

self.tabBarItem.accessibilityIdentifier = "NewRecordTab"