【问题标题】:UIAccessibility Tableview Scrolling IssueUIAccessibility Tableview 滚动问题
【发布时间】:2013-12-22 02:03:16
【问题描述】:

我已经为自定义表格视图实现了可访问性。 我为表格单元格的所有子视图(如图像视图、标签、按钮、文本字段)启用了可访问性。

在实现辅助功能后,我面临 2 个问题。

  1. 由于可访问性框架的焦点,tableviewcell 框架表现得非常奇怪。它在画外音滑动事件上向左或向右移动。焦点使视图框架根据选择对齐。

  2. 如果单元格的数量更多,则滚动不起作用。直到单元格可见,可访问性工作正常。一旦焦点转到不可见的单元格,tableview 就会根据画外音选择滚动,但并不像预期的那样。

我已经实现了以下这些方法。

-(BOOL)isAccessibilityElement
{
    return NO;
}

-(NSInteger)accessibilityElementCount
{
    return self.subviews.count;
}

-(id)accessibilityElementAtIndex:(NSInteger)index
{
    return [self.subviews objectAtIndex:index];
}

-(NSInteger)indexOfAccessibilityElement:(id)element
{
    return [self.subviews indexOfObject:element];
}

-(BOOL)shouldGroupAccessibilityChildren
{
    return YES;
}

我读到这些方法在视图控制器中不起作用。所以我在单元类中实现这些。

您知道如何解决此可访问性问题吗?请帮忙提出宝贵的建议。

【问题讨论】:

  • 自定义表格视图是什么意思?不是 UITableView?
  • 是的,它是uitableview,但单元格是自定义的。
  • 那么你在你的问题中监听的容器方法是在cell类中实现的?
  • 是的,大卫。我在单元类中实现了这些。
  • 子视图是标签和你所期望的,而不是像 backgroundView 和 containerView 这样的东西?

标签: ios uitableview voiceover uiaccessibility


【解决方案1】:

如果您的子视图(如您提到的标签、按钮)的框架超出屏幕尺寸,则可能会出现问题 #1。

验证是否是这种情况的一种直观方法是更改​​子视图的颜色:如果特定子视图比其他视图扩展得更远,您会注意到可访问性焦点转移。

减小要解决的子视图框架的大小。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-01-18
    • 1970-01-01
    • 2020-02-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多