如何在其 isAccessibilityElement = false 时禁用元素的可访问性焦点

Posted

技术标签:

【中文标题】如何在其 isAccessibilityElement = false 时禁用元素的可访问性焦点【英文标题】:How to disable accessibility focus of an element while its isAccessibilityElement = false 【发布时间】:2020-07-01 13:47:52 【问题描述】:

我以不同的方式关闭了 UITableViewCell 的可访问性。但是,它在被选中时仍然是可聚焦的。

override public func awakeFromNib() 
    super.awakeFromNib()

    selectionStyle = .none


convenience init() 
    self.init()

    isAccessibilityElement = false


public override func didMoveToWindow() 
    super.didMoveToWindow()

    isAccessibilityElement = false
    isUserInteractionEnabled = false
    subView.isAccessibilityElement = false


public override var canBecomeFocused: Bool 
    return false

这是来自视图调试器的屏幕截图:

有什么线索吗? 谢谢

【问题讨论】:

【参考方案1】:

制作accessibilityElementsHidden = true 解决了它。

public override func didMoveToWindow() 
    super.didMoveToWindow()

    isAccessibilityElement = false
    accessibilityElementsHidden = true

【讨论】:

以上是关于如何在其 isAccessibilityElement = false 时禁用元素的可访问性焦点的主要内容,如果未能解决你的问题,请参考以下文章

如何中断组件在其构造函数中的加载?

如何检查刷新控件是不是在其目标操作方法中刷新

如何在其位置缩放矩形

如何在代码中判断用户是不是在其设置菜单中“锁定了音量”

如何添加如图所示的弯曲模态底片?如何在其上方添加关闭按钮?飘飘然

如何在其运行总计达到零的帐户上应用状态