所以,我有一个 TableView ,在 viewforheaderinsection 中,我创建了一个 View ,以编程方式创建了一些控件,例如按钮和分段控件。我将这些控件添加为 View 的 subview ,然后返回 View 。问题是当辅助功能读取控件时,它会在末尾附加“标题”。它说“按钮”暂停然后说“标题”。我知道我可以将标题 View 转换为单元格以抑制“标题”标注,但这不是一个选项。该项目非常大,需要大量时间将 headerviews 更改为单元格。有没有办法在不将标题 View 更改为单元格的情况下抑制“标题”标注?
最佳答案
你需要实现
-(void)tableView:(UITableView *)tableView willDisplayHeaderView:(UIView *)view forSection:(NSInteger)section;
例如
- (void)tableView:(UITableView *)tableView willDisplayHeaderView:(UIView *)view forSection:(NSInteger)section
{
view.accessibilityTraits = UIAccessibilityTraitNone;
}
在该函数内,将 header 的可访问性特征设置为 UIAccessibilityTraitNone,或者简单地删除 UIAccessibilityTraitHeader。
在里面做
-(UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
不会有任何好处,因为 iOS 稍后会添加 header 特征。您需要在显示标题之前修改特征。
关于ios - 如何防止 UIaccessibility 对在 viewforheaderinsection 中创建的控件说 "heading"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39149259/