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!
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
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
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 }] }, ]} >
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
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
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
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!
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?
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 ?
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.
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!!!
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.
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
@@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?
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.
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
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
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"
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.