UITableViewCell内的VoiceOver用户交互

时间:2012-10-23 14:31:22

标签: iphone ios uitableview accessibility voiceover

我有一个带有自定义UITableViewCell CustomCell的UITableView CustomCell有一些启用了用户交互的UILabel CustomCell实现touchesBegan:

- (void) touchesBegan:(NSSet*)touches withEvent:(UIEvent*)event {
UITouch* touch = touches.anyObject;
    self.itemSelected=[touch view].tag;
    self.viewSelected=[touch view];
[super touchesBegan:touches withEvent:event];
}

如果我没有启用VoiceOver,touchBegan被调用,并且正确的视图被“选中”,这项工作正常
启用VoiceOver后,如果我执行“双击然后按住”,也会调用touchesBegan,但与触摸事件关联的视图的类型为UITableViewCellContentView。
知道如何保持与tableview单元格中的那些项目的用户交互吗?
我尝试过的不成功:
- 确保在单元格对象上禁用了辅助功能
- 确保在标签对象上启用了辅助功能
- 尝试了标签的各种特征组合
- 确保启用用户交互在标签上
想法?

1 个答案:

答案 0 :(得分:2)

找到了答案

我需要实现以下方法

- (NSInteger)accessibilityElementCount;
- (id)accessibilityElementAtIndex:(NSInteger)index;
- (NSInteger)indexOfAccessibilityElement:(id)element;