Comments (6)
@MrLoh This library uses native animations for moving and scaling elements using a technique similar to FLIP like you are describing. The discussion here is about finding a way to open up for animating properties not supported by the native driver. There are several issues I'm working on to get this to work properly.
First of all we have the problem of not being able to use stateless components for animating (with Animated.createAnimatedComponent). This can be solved by creating a wrapper for the stateless component and transferring shared element/transition properties.
Next we have the issue with native vs. non-native animations. I'm close to solving this by creating another set of wrappers that basically creates two outer elements, one for native animations and one for non-native animations.
With these solutions I'm pretty confident that we can create a good-enough solution to the problems with animations, with the limitation in performance that @narendrashetty has pointed out for some of the animations, but with full native support where applicable.
from fluidtransitions.
Thanks for your feedback! It is really appreciated.
What I'm trying to do with combining native/non-native animations is to run native animations like transforms and opacity using the native driver while running other animations with the non-native driven animated value. This is not a trivial task to implement so we'll see what the results will be.
from fluidtransitions.
Totally makes sense. Will follow your development :)
from fluidtransitions.
The trick is that to be able to animate every component (also function-based stateless components which normally does not play well with animated) I'm wrapping my component and thought I could wrap in to components - one used for native animations and one for non-native animations. It's a little tricky to transfer the correct style props and build the component.
from fluidtransitions.
I was also thinking, since it's not possible for layout properties with native driver, how about we work on an addon which works with layout properties too. I know this is beyond the scope of this library, just thinking out loud. Don't know if it's even possible
from fluidtransitions.
I’m no expert on the matter but from my understanding the only performant approach to layout animations is using the FLIP technique. No matter what Plattform layout animations are just not performant because of how rendering works on native and web platforms. So animating layout properties should just be discouraged probably.
from fluidtransitions.
Related Issues (20)
- Update TransitionItemsView componentWillRecieveProps to use getDerivedStateFromProps
- Add support for React Navigation 4 HOT 18
- getting an exception error of unmount Transition shared key
- [question] Transition element on navigate HOT 1
- Does it support React-Native-Navigation
- Unable to modify duration/speed using <Transition> HOT 1
- Transition component's disappear prop does not work
- No header when using fluidNavigator HOT 5
- (0, _reactNavigationFluidTransitions.default) is not a function HOT 3
- React Navigation v4^ the navigation prop is missing for this navigator HOT 1
- get current transition route name
- [ShareElement] How can i zoom out the view container on List Image on share transition?
- Fluid Navigator Transition not working in iOS? HOT 1
- Can't get it to working. HOT 7
- Shared Element Transition - Works Only For One Way
- support react-navigation5 HOT 11
- How to solve the inaccurate moving distance caused by zooming while moving?
- Tab navigation
- typescript
- error message
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from fluidtransitions.