React Native FlatList Animations

Поделиться
HTML-код
  • Опубликовано: 23 окт 2024

Комментарии • 127

  • @kimbrandwijk
    @kimbrandwijk 4 года назад +7

    Just wanted to hop back in and say thanks. I was just watching this video the other week, and today, I ran into a situation where I had to add a static element to my scrollview and I suddenly remembered your neat little trick of 'cancelling out' the translation during scroll. Worked like a charm, in less than a minute. Absolute lifesaver trick I would never, ever have come up with if it wasn't for your video. Keep 'm coming!

  • @PVideos10
    @PVideos10 4 года назад +49

    Please do more of these tutorials with the animated api.

    • @wcandillon
      @wcandillon  4 года назад +15

      Message received. Will try to showcase other examples where it might make sense.

  • @MrLucasEss
    @MrLucasEss 4 года назад +7

    The content on this channel is pure gold!!
    The only thing though is that you don't give a clear explanation on why every decision was made and what each value actually means.
    But then it's not on you to explain every concept, that's were being an autodidact comes handy.
    Either way, love the content

  • @tamishkhurana8784
    @tamishkhurana8784 4 года назад +5

    Just wow, you motivated me more for animations after this, thanks🙏

  • @waroulolz
    @waroulolz 4 года назад +6

    Line 35 should be "outputRange: [0, -index * (CARD_HEIGHT + 2 * MARGIN)]" right ? With a bigger list, margins add up and you would see cards disappearing before hitting the top of the screen

  • @wolfromkev
    @wolfromkev 4 года назад +1

    If anyone is following along to add this to their own project, a good way to get the exact height of your element is to use the onLayout props, which will automatically calculate the height of your component.
    const [itemHeight, setItemHeight] = useState(0);
    const onLayout = (e) => {
    setItemHeight(e.nativeEvent.layout.height);
    };
    ...content

    • @wolfromkev
      @wolfromkev 4 года назад +1

      Followup: Ensure to add the margin to this value if you have one on your component.
      const [itemHeight, setItemHeight] = useState(0);
      ....
      ...
      ..
      .
      {
      setItemHeight(e.nativeEvent.layout.height + MARGIN);
      }}
      style={[
      styles.listing,
      { opacity, transform: [{ translateY }, { scale }] },
      ]}
      >

  • @yaltharullist9181
    @yaltharullist9181 4 года назад +3

    I already fell in love with your accent

  • @christianparra3162
    @christianparra3162 4 года назад +3

    Great as always! back to the basics, will be great something like this with the "hide/show header on scroll" on android is kinda tricky and almost all examples are outdated

  • @DUO_QUEST
    @DUO_QUEST 4 года назад +20

    so jhonny sins is also a developer i am impressed

  • @mrst8086
    @mrst8086 4 года назад

    Looks awesome, thanks for your example!

  • @droidmakk4968
    @droidmakk4968 4 года назад +1

    It's the end of June 2020 already and I'm all gearing up for React Native animations and transitions 😇

  • @lawrencelau3771
    @lawrencelau3771 4 года назад +8

    So adorable french style english

  • @hobbyhub-91
    @hobbyhub-91 4 года назад

    Wow can't wait to try it out

  • @lucaslaurens4208
    @lucaslaurens4208 3 года назад

    Really cool and fun to watch video. It's a great animation to copy. Thank you !!

  • @weligamage1
    @weligamage1 2 года назад

    Thank you. keep up your good work

  • @Jorsfel
    @Jorsfel 4 года назад +2

    Excellent tutorial, thank you! Also love your accent haha, you sound more French than Swiss to me but I'm Australian so am hardly qualified to tell the difference. :p

    • @armaghanasghar2911
      @armaghanasghar2911 3 года назад +1

      Great observation. A large part of Beautiful Switzerland speaks French (~30%). They also speak German (~60%). William was likely raised in French speaking part of the region. Cheers!

  • @_maksime
    @_maksime 4 года назад

    Really interesting as usual ! Congrats

  • @trigun539
    @trigun539 4 года назад

    Great video, thank you!

  • @rein7840
    @rein7840 4 года назад +1

    You are insane. Please more with Animated api

    • @wcandillon
      @wcandillon  4 года назад +1

      Thanks man, let me know if you have any suggestion

  • @guillaumeRean
    @guillaumeRean 4 года назад +2

    Great great great :D
    I'm going to implement that immediatly (in left to right..) !! But do you think it can work with the snapToInterval prop of the scrollview ?

    • @guillaumeRean
      @guillaumeRean 4 года назад

      Yes it can (he said it in the video) but i've also implemented it.

  • @izhanyameen3047
    @izhanyameen3047 4 года назад +2

    Coding starts at 3:57

  • @danielnegrisoli
    @danielnegrisoli 4 года назад +1

    Great tutorial!

  • @henrybravos
    @henrybravos 4 года назад

    its fantastic

  • @joelsidy
    @joelsidy 4 года назад

    really cool !!! Thank you

  • @SathishKumar-ju7fv
    @SathishKumar-ju7fv 4 года назад

    simply awesome !!

  • @makisetakashi
    @makisetakashi 4 года назад +1

    I love the simplest one

  • @hitechfocus
    @hitechfocus 3 года назад

    Amazing

  • @jbradshaw7
    @jbradshaw7 3 года назад +1

    Nice, but I guess it only works of you have a fixed card height.

  • @fam8937
    @fam8937 3 года назад +1

    hello Sir. There is one problem with animations. if I have a list of dynamic items it depends on paggination, then the animation is not good.Initially it's working fine but after some item it somewhat lower than the top. experience some blank space on the top of the screen.

  • @leonelorlante2961
    @leonelorlante2961 3 года назад

    Awesome!

  • @shortquts
    @shortquts 4 года назад +3

    Idea for another tutorial: Pinterests Masonry Image Layout

  • @akhiljain5214
    @akhiljain5214 3 года назад +1

    Can you update and explain the same animation for a two column flat list ?

  • @deepakpanwar9717
    @deepakpanwar9717 3 года назад

    Nice tutorial mate, and please tell us which them you're using for VsCode, that's a delicious purple color theme. I want the same.

  • @peymanhakemifar3671
    @peymanhakemifar3671 4 года назад +1

    nice one. thank you

    • @wcandillon
      @wcandillon  4 года назад

      Thank you for your continuous support Payman 🙌🏻

    • @wcandillon
      @wcandillon  4 года назад

      Thank you for your continuous support Payman 🙌🏻

  • @oscar_cornejo
    @oscar_cornejo 4 года назад +1

    Will there be a new series of these videos or more examples, but with Reanimated 2?

  • @hongngocle6979
    @hongngocle6979 4 года назад +3

    Perfect

  • @codigosimple1989
    @codigosimple1989 2 года назад

    you don't provide starter files to follow through the tutorial so in my case I couldn't follow through, I tried to run your source code but is filled with errors in my text editor and versioning problems

  • @benrobinson6055
    @benrobinson6055 4 года назад +5

    Nice! Would be really interested to hear why reanimated wasn't suitable for this?

    • @wcandillon
      @wcandillon  4 года назад +3

      On Android, the frame by frame syncing of the scrollview animation value is not precise enough with reanimated. It might be fixed soon in Reanimated

    • @thomazcapra5535
      @thomazcapra5535 2 года назад +1

      @@wcandillon Is this answer updated?

  • @richardpatove4587
    @richardpatove4587 2 года назад

    where is the first lesson for animations is there any zero to hero playlist

  • @linbook955
    @linbook955 4 года назад

    hi,what recording software were you using? your image on the bottom left,how did you make it? thank you so much

  • @dejijames4358
    @dejijames4358 3 года назад

    Hi Wonderful Video. Is there a .js version of this ? Or must it be .tsx

  • @Tchoow
    @Tchoow 3 года назад

    WOW THANKS ♥

  • @dockies
    @dockies 2 года назад

    How do you make it scroll horizontally?

  • @lukemontana9792
    @lukemontana9792 4 месяца назад

    great

  • @VinhTruong-fo5bh
    @VinhTruong-fo5bh 4 года назад

    Great!

  • @amarjitsingh8954
    @amarjitsingh8954 3 года назад +2

    Because of COVID johnny also started working from home

  • @shristysinha3114
    @shristysinha3114 3 года назад

    hello sir, i have two doubts , ,instead of typescript i am using js, and since u have used in walletCard.tsx -> y as Animated.Value in interface and i have taken the y state as props from wallet.tsx -> like this -> const[y, setY ] =useState(new Animated.Value(0)); and using this as as prop in walletCardd.tsx and the other doubt is : how i should used the interface 'index: number' in my interpolate -> inputRange: [0, 0.00001 + index * CARD_HEIGHT], i have taken 'index' as prop from previous component. Please help me

  • @misterio1980ful
    @misterio1980ful 4 года назад +1

    Hello William.
    I really enjoy your tutorials you are really good at coding. I got a question do you have the same tutorial in javaScript as you are using typeScript it vary a bit, I tried to create the same animation in javaScript but I struggled a bit..
    Thank you again and hope you are having a great day!!!

  • @WholeNewLevel2018
    @WholeNewLevel2018 4 года назад

    Awesome video!
    May I ask you from where I can get such a beautiful card background style. Appreciated It if you can tell me how you made them or what this kind of design called.

  • @SohaibKarim
    @SohaibKarim 4 года назад

    amazing explanation and accent 🙂
    Can you do a tutorial on scratch card animation please ? It can help us with gesture + animation both.

  • @excalibur885
    @excalibur885 4 года назад +2

    Its perfect. Atleast not that complicated as like your other videos :) ... btw, do you planning to make this instagram textbox background effect in direct messages that i sent to you ? is it possible in react native?

    • @wcandillon
      @wcandillon  4 года назад +1

      Thanks man! I didn't get a change to look into it yet.

    • @excalibur885
      @excalibur885 4 года назад

      @@wcandillon thank you. Waiting with patience for it :)

  • @kevinthomas4777
    @kevinthomas4777 4 года назад

    You are just amazing ❤️❤️❤️❤️

  • @praveensskillsoft4504
    @praveensskillsoft4504 4 года назад +1

    how to animate remove item? After remove item, the item below it should slide slowly up? can you make video on that
    ?

    • @wcandillon
      @wcandillon  4 года назад +1

      I have a video on that at ruclips.net/video/1d8a_NZ9l1E/видео.html

    • @praveensskillsoft4504
      @praveensskillsoft4504 4 года назад

      @@wcandillon thanks for the prompt response. I have gone through and used varying the height of card. Its fine but some glitches as my card is of variable height, anyway to handle that?

  • @hyacinthehamon
    @hyacinthehamon 4 года назад

    Amazing as always :)

  • @rukmanaland
    @rukmanaland 4 года назад

    if the Flatlist is horizontal we can simply change y to x?

  • @aftabamin8508
    @aftabamin8508 3 года назад

    Hello, I need a flat list with optimization for the contact list. could you create a video for this? I didn't find a single thing on this. I have tried all the given solutions on the internet and perform all the optimization.

  • @Rajibahmed
    @Rajibahmed 3 года назад

    really love your accent :) , Do you speak the Romansh too ?

  • @yaroslav9586
    @yaroslav9586 4 года назад +1

    You create library react native reanimated?

  • @shristysinha3114
    @shristysinha3114 3 года назад

    what to use as an interface y and index in javascript ?

  • @HiruuykyGamer
    @HiruuykyGamer 4 года назад

    you're awesome

  • @aragothkarsen5010
    @aragothkarsen5010 4 года назад +1

    Can you do the profile twitter's animated header with tabs?

  • @phucwall121
    @phucwall121 2 года назад

    My head: FlatList "why are you so handsome?" :v ♥️♥️

  • @Tech4easy2015
    @Tech4easy2015 4 года назад

    Hey! Noob question. But how would I go about navigating to another screen when clicking a card. My idea is to have different navigation pages for each card

    • @Tech4easy2015
      @Tech4easy2015 4 года назад

      Hey, still looking forward to reply😊

    • @dq303
      @dq303 3 года назад

      stack navigator component in your app.js file

  • @rodrigososa5281
    @rodrigososa5281 4 года назад

    What is your opinion of react spring with react native?

  • @guleye
    @guleye 4 года назад

    You don't put the same code in GitHub . Sad

  • @sarmatkasaev
    @sarmatkasaev 4 года назад +1

    what color theme do you use for vscode?

  • @fredtechnet
    @fredtechnet 2 года назад

    Super 👌👌👌👌

  • @robertshawnmitchell
    @robertshawnmitchell 4 года назад +1

    hey guys, what is up?

  • @engelshentenawy
    @engelshentenawy 4 года назад

    wondering why can't you use reanimated ?

  • @mohammedalshafie8226
    @mohammedalshafie8226 4 года назад

    im trying to do this with a horizintal flatlist but things got missed up can anyone help ?

  •  4 года назад

    there is a tutorial of how use expo, im trying to follow the tutorials with the boilerplates pero doesnt work, thanks a lot for this.

    • @wcandillon
      @wcandillon  4 года назад +1

      does this video help: ruclips.net/video/MqRnpUC4czs/видео.html

  • @JosueHerrera021
    @JosueHerrera021 3 года назад

    One more student.

  • @gekoskipatric
    @gekoskipatric 2 года назад

    why did you use Animated from React instead of reanimated?

    • @vasylnahuliak
      @vasylnahuliak Год назад

      02:03 "We had to use the vanilla animated API from react native because here using reanimated that on Android we couldn't get frame by frame full control over the way the element moves"

  • @MatteoGauthier
    @MatteoGauthier 4 года назад +1

    Salut est-ce que tu pourrais faire ses vidéos en Français ?

    • @wcandillon
      @wcandillon  4 года назад

      Malheureusement ce n'est pas encore prévu Matthèo. J'apprends l'allemand en ce moment, je devrai essayer de faire une vidéo en allemand 😅

    • @MatteoGauthier
      @MatteoGauthier 4 года назад

      @@wcandillon D'accord pas de soucis, en tout cas merci pour ces vidéos de qualités !

  • @XaviXaviXavi
    @XaviXaviXavi 3 года назад

    Nice video! You have a french accent, isn’t it?

  • @euvictorguedes
    @euvictorguedes 4 года назад

    What's you theme?

  • @14zdog
    @14zdog 4 года назад

    DnD flatlist please

  • @MLKH19
    @MLKH19 2 года назад

    Oh le bon accent fr

  • @exploreur
    @exploreur 3 года назад

    Intéressant le tuto français ça ce vois a l'accent ? 😊

  • @motasder
    @motasder 4 года назад

    How to draw maps malls

  • @loudcoringa5935
    @loudcoringa5935 2 года назад

    calvo

  • @jemesmemes9026
    @jemesmemes9026 4 года назад +3

    Second!

    • @wcandillon
      @wcandillon  4 года назад +1

      This is my first "second" on my channel, I love it :)

  • @alexandrodisla6285
    @alexandrodisla6285 3 года назад

    Mon ami peux-tu encourager un de tes confrères de faire casiment le meme travail que toi, mais avec Flutter.

  • @karlj.5730
    @karlj.5730 3 года назад

    what is your brain made of? just wow!

  • @c_r8256
    @c_r8256 4 года назад

    Tu peux le faire en français pour moi haha l'accent ta trompé !

  • @ArnavSingh-im5bj
    @ArnavSingh-im5bj 4 года назад

    I love ur commentary but it lacks explanation.

  • @khaledhip361
    @khaledhip361 4 года назад

    Vous avez une accent française 😄

  • @strellymbayaofficiel
    @strellymbayaofficiel 4 года назад

    Ton Anglais est terrible !! Mdr !! ça c'est lorsqu'un français cherche à parler le chinois !!

  • @ahmedbrhili1965
    @ahmedbrhili1965 3 года назад

    Stp parle en français c'est mieux wallah

  • @jagdishsinhjadeja9623
    @jagdishsinhjadeja9623 4 года назад

    Flutter is better than react native.

  • @aftabamin8508
    @aftabamin8508 3 года назад

    Hello, I need a flat list with optimization for the contact list. could you create a video for this? I didn't find a single thing on this. I have tried all the given solutions on the internet and perform all the optimization.