Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Swipe left and right on button click #1

Open
davy-devibharat opened this issue Jun 19, 2020 · 13 comments
Open

Swipe left and right on button click #1

davy-devibharat opened this issue Jun 19, 2020 · 13 comments
Labels
enhancement New feature or request help wanted Extra attention is needed

Comments

@davy-devibharat
Copy link

Hi,
Thanks for you help,
How can I Swipe left and right on button click
as when I click Like and Dislike button card should auto Swipe

Your response will be helpful to me

Thanks

@dadalar
Copy link
Owner

dadalar commented Jul 7, 2020

Hi @devorblackbeard,

I tried a few tricks - you can remove the current element from your array but the tricky part is to get proper animation. If you have a solution I'm glad to incorporate but for now it seems I need to change fundamentals to support this. Anyway, I'll keep this in mind for the next version.

Thanks for your input.

@dadalar dadalar added enhancement New feature or request help wanted Extra attention is needed labels Jul 7, 2020
@zkhalapyan
Copy link

+1, this would be great to have! I wonder if we can collaborate on this; if you have any pointers, I can try it out.

@dadalar
Copy link
Owner

dadalar commented Sep 3, 2020

The main issue is animating the card out of the screen programmatically. There is already a hard to notice problem where when you drag a card and lift off your finger, the card start animating but also goes behind other cards. This looks like an undefined behaviour and probably we should be using a custom transition/animation instead of the one we have in CardView.swift's removal transition (line 71).

@timothyerwin
Copy link

@dadalar this component is working very well for swipe but unfortunately not having a programmatic way to do it is a showstopper....

@nomadplanet
Copy link
Contributor

Hi,

I spent quite a few hours on this and indeed the project needs a substantial rework in order to have a programmatic swipe.

I achieved this result :

Simulator Screen Recording - iPod touch (7th generation) - 2022-04-26 at 15 18 44

I even have an «unswipe» (undo) function.

Not sure @dadalar would want a PR on his repo given it's almost a rewrite. Yet you can have a look at my work in my rework branch in my fork.

@Mcrich23
Copy link

@nomadplanet How are you doing the undo?

@nomadplanet
Copy link
Contributor

Like I said, check out my rework branch in my fork, you'll have your answer :)

@Mcrich23
Copy link

I don't see your fork

@nomadplanet
Copy link
Contributor

I got it transferred to another account. Check out https://github.com/bruxless/SwiftUI-CardStackView

@wellsfletcher
Copy link

@nomadplanet your changes work great! I did notice that the model.unswipe() function doesn't have a completion handler like the model.swipe() function does. Small issue, but I have to do a pretty cringe workaround to fix a bug due to this.

@nomadplanet
Copy link
Contributor

Unswiping is not really different from swiping, I don't think it would be too hard to call the onSwipe() completion handler at some point

@aehlke
Copy link

aehlke commented Apr 28, 2023

anyone finding luck with this new fork, or making progress in other ways? thanks

@yildirimatcioglu
Copy link

any update?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

9 participants