如何解决如何在不接触 Swift 中的段的情况下动态更改 UISegmentControl幻灯片的索引?
我正在努力实现我在任何地方都找不到任何来源或示例的东西。我想实现运动检测,当用户摇晃手机时,我想在不明确触摸它的情况下更改该段。因此,例如,当用户在我的应用程序中摇晃手机时,它会检测到运动,如果 selectedSegmentIndex 为 0,它应该移动到索引 1,同样,如果它在第一个索引上,它应该移动到 0 的索引。到目前为止,我已经实现了运动检测,但我不知道如何根据运动为 UiSegmentControl 启动事件。有什么地方可以这样做吗?甚至有可能吗?请任何人都可以帮助我吗?任何可能的想法和示例将不胜感激。
到目前为止我已经完成了:
override var canBecomeFirstResponder: Bool {
get {
return true
}
}
override func motionEnded(_ motion: UIEvent.EventSubtype,with event: UIEvent?) {
if motion == .motionShake {
Vibration.heavy.vibrate()
switch self.mysegmentControl.selectedSegmentIndex {
case 0:
print("0")
case 1:
print("1")
default:
break
}
}
}
解决方法
试试:
if motion == .motionShake {
switch self.mysegmentControl.selectedSegmentIndex {
case 0:
self.mysegmentControl.selectedSegmentIndex = 1
case 1:
self.mysegmentControl.selectedSegmentIndex = 0
default:
break
}
self.mysegmentControl.sendActionsForControlEvents(UIControlEvents.ValueChanged)
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。