如何使用 KolodaView Swift 在卡片的左右拖动中点击喜欢和不喜欢 API
Posted
技术标签:
【中文标题】如何使用 KolodaView Swift 在卡片的左右拖动中点击喜欢和不喜欢 API【英文标题】:How to hit Like and dislike API on left and right drag of cards using KolodaView Swift 【发布时间】:2021-06-18 07:44:27 【问题描述】:我正在使用 kolodaview 进行卡片 swift 之类的视图。一切正常,但我卡在一个地方。当用户向左或向右滑动卡片时,API 会点击喜欢和不喜欢。 对于这个左右koloda给定的委托方法:
func koloda(_ koloda: KolodaView, draggedCardWithPercentage finishPercentage: CGFloat, in direction: SwipeResultDirection)
if direction == .left
if finishPercentage == 100.0
apifordislike()
else if direction == .right
apiforlike()
它的工作但问题是,在交换完成百分比 == 100.0 并点击 API 时,但用户缓慢滑动卡片 API 并点击多个,重复 100.0。我只想要一击。
【问题讨论】:
【参考方案1】:为什么不使用
func koloda(_ koloda: KolodaView, didSwipeCardAt index: Int, in direction: SwipeResultDirection)
改为?
否则,请保留有关状态的信息 - 例如
...
var alreadyLiked: Bool = false
var alreadyDisliked: Bool = false
...
func koloda(_ koloda: KolodaView, draggedCardWithPercentage finishPercentage: CGFloat, in direction: SwipeResultDirection)
if direction == .left
if finishPercentage == 100.0
if !alreadyDisliked
alreadyDisliked = true
apifordislike()
else if direction == .right
if !alreadyLiked
alreadyLiked = true
apiforlike()
在您的情况下,您可能会保留两个变量,以防有人改变主意改变为不喜欢。此外,当操作从喜欢变为不喜欢时,您可能希望重新启动标记,反之亦然。
【讨论】:
我认为 func koloda(_ koloda: KolodaView, didSwipeCardAt index: Int, in direction: SwipeResultDirection) 是更好的解决方案,谢谢 如何在左右拖动时在顶部添加图像 您可以在开始拖动或任何其他类似的委托方法中添加图像。以上是关于如何使用 KolodaView Swift 在卡片的左右拖动中点击喜欢和不喜欢 API的主要内容,如果未能解决你的问题,请参考以下文章