如何在 Swift 中将滑动动作发送到 UIView
How to send Swipe Action to UIView in Swift
我正在尝试克隆 Tinder,已通过 Yalantis/Koloda (https://github.com/Yalantis/Koloda) 向左滑动(不喜欢的人)和向右滑动(喜欢的人)。我还有两个按钮 like/dislike 的图像。我希望我的 mainView 在我触摸 like/dislike 图像时滑动 Left/Right。
let likeImageTap = UITapGestureRecognizer(target: self, action: #selector(HomeViewController.sendSwipeRightAction))
likeImage.isUserInteractionEnabled = true
likeImage.addGestureRecognizer(likeImageTap)
这个函数应该怎么写?
@objc func sendSwipeRightAction() {
}
这是我的协议
extension HomeViewController: KolodaViewDataSource, KolodaViewDelegate {
//...
func koloda(_ koloda: KolodaView, didSwipeCardAt index: Int, in direction: SwipeResultDirection)
{
if direction == .left {
//...
print ("swipe left")
}
if direction == .right {
//...
print("swipe right")
}
}
}
这是我的看法
@IBOutlet var mainView: KolodaView!
我尝试使用这个函数,然后在点击图像时调用它,这样我就可以像滑动一样做我想做的事,但视图不会切换到下一张图像。
public func swipe(_ direction: SwipeResultDirection, force: Bool = false)
{
//..
}
所以我想将滑动动作发送到视图,示例:
mainView.sendActions(for: .swipeLeft)
我该怎么办?感谢您的建议。
中有代码
kolodaView.swipe(.left)
kolodaView.swipe(.right)
你的代码会像这样
@objc func sendSwipeRightAction() {
mainView.swipe(.right)
}
我正在尝试克隆 Tinder,已通过 Yalantis/Koloda (https://github.com/Yalantis/Koloda) 向左滑动(不喜欢的人)和向右滑动(喜欢的人)。我还有两个按钮 like/dislike 的图像。我希望我的 mainView 在我触摸 like/dislike 图像时滑动 Left/Right。
let likeImageTap = UITapGestureRecognizer(target: self, action: #selector(HomeViewController.sendSwipeRightAction))
likeImage.isUserInteractionEnabled = true
likeImage.addGestureRecognizer(likeImageTap)
这个函数应该怎么写?
@objc func sendSwipeRightAction() {
}
这是我的协议
extension HomeViewController: KolodaViewDataSource, KolodaViewDelegate {
//...
func koloda(_ koloda: KolodaView, didSwipeCardAt index: Int, in direction: SwipeResultDirection)
{
if direction == .left {
//...
print ("swipe left")
}
if direction == .right {
//...
print("swipe right")
}
}
}
这是我的看法
@IBOutlet var mainView: KolodaView!
我尝试使用这个函数,然后在点击图像时调用它,这样我就可以像滑动一样做我想做的事,但视图不会切换到下一张图像。
public func swipe(_ direction: SwipeResultDirection, force: Bool = false)
{
//..
}
所以我想将滑动动作发送到视图,示例:
mainView.sendActions(for: .swipeLeft)
我该怎么办?感谢您的建议。
kolodaView.swipe(.left)
kolodaView.swipe(.right)
你的代码会像这样
@objc func sendSwipeRightAction() {
mainView.swipe(.right)
}