【发布时间】:2021-06-01 18:12:12
【问题描述】:
我正在尝试将 VoiceOver 添加到分段控件,但 Apple 示例代码不适用于 Swift 3:
Objective C 代码:
NSString *title = @”∫”;
title.accessibilityLabel = @”Integral”;
[segmentedControl insertedSegmentedWithTitle:title];
不能像这样使用 Swift:
var title: NSString = "∫"
title.accessibilityLabel = "Integral"
segmentedControl.insertSegment(withTitle: title, at: 0, animated: false)
Swift 将只接受一个字符串,但我需要添加一个 NSString,因为它具有 VoiceOver 属性。
有什么可以帮忙的吗?
是否有更好的方法可以将辅助功能或 VoiceOver 添加到分段控件?
谢谢
格雷格
【问题讨论】:
-
Swift 也将接受 NSString。你有什么错误吗?
-
最坏的情况,您可以遍历子视图并手动设置辅助功能标签。
-
Teja,insertSegment 的 swift 版本(withTitle 仅针对 String 的类型,不接受 NSString。
-
安迪,对于应该“开箱即用”的东西来说,似乎需要做很多工作。
标签: ios objective-c swift accessibility uisegmentedcontrol