Code Monkey home page Code Monkey logo

react-navigation-transitions's People

Contributors

heyman333 avatar muhamad-rizki avatar plmok61 avatar zifahm avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

react-navigation-transitions's Issues

flipX and flipY not working correctly on Android when going back

I get the following error using flipX or flipY while going back on navigation (on iOS works correctly):

Error while updating property 'backfaceVisibility' of a view managed by: RCTView

null

Attempt to invoke virtual method 'boolean java.lang.String.equals(java.lang.Object)' on a null object reference
updateViewProp
ViewManagersPropertyCache.java:95
setProperty
ViewManagerPropertyUpdater.java:132
updateProps
ViewManagerPropertyUpdater.java:51
updateProperties
ViewManager.java:37
updateProperties
NativeViewHierarchyManager.java:136
execute
UIViewOperationQueue.java:95
run
UIViewOperationQueue.java:917
flushPendingBatches
UIViewOperationQueue.java:1025
access$2600
UIViewOperationQueue.java:46
doFrameGuarded
UIViewOperationQueue.java:1085
doFrame
GuardedFrameCallback.java:29
doFrame
ReactChoreographer.java:166
doFrame
ChoreographerCompat.java:84
run
Choreographer.java:947
doCallbacks
Choreographer.java:761
doFrame
Choreographer.java:693
run
Choreographer.java:935
handleCallback
Handler.java:873
dispatchMessage
Handler.java:99
loop
Looper.java:193
main
ActivityThread.java:6669
invoke
Method.java
run
RuntimeInit.java:493
main
ZygoteInit.java:858

dont animaiton in splash screen

hi when add transtion in splash screen next home page screen with
this.props.navigation.replace('Login')
not work. but only work in
this.props.navigation.push('Login')

Back navigation with custom animations

When we add fadeIn animation to our stackNavigator for several screens, sometime we have issue that our animation applied in both ways of navigating. We solved it by adding isActive.

// Custom transitions go there
  if (prevScene
    && prevScene.route.routeName === 'ScreenA'
    && nextScene.route.routeName === 'ScreenB'
    && nextScene.isActive) {
    return fadeIn();
  }
  return null;
}

I hope this solution will help those who want to use navigation only in one direction.

Cleanup non issue

When my account was compromised a spam issue was created in this repo. I sincerely apologize. Cleaning up such issues via script.

zoomIn() not working correctly with back navigation on Android

Hello! Thanks for creating this library. I'm using zoomIn(1000) as my transitionConfig and when I call NavigationActions.back() the previous screen "flashes" during the transition. Please see attached files and let me know if you need more info.
untitled

Page keep blinking when move to third page

Hi,

I'm new in React-Native.
I'm using the FlipY effect on my application.
Everythings running ok on Android version.
But when I tried to run on Ios version, when I navigate to the third page.
The page will keep blinking.

Example: Home Page > Login Page > Verification Page.

If I remove the effect, the page will not be blinking.

May I know how to solve this issue?
Thanks a lot

applying it to a specific route only

Is there a way I can implement this to a specific route? Right now it only works like this:

const MainNavigator = StackNavigator({
  mainPages: { screen: MainPages },

  loginPage: { screen: new StackNavigator({
    usersLoginScreen: { screen: LoginPage },
  }, { headerMode: 'screen' }) },

  signupPage: { screen: new StackNavigator({
    usersSignupScreen: { screen: SignupPage },
  }, { headerMode: 'screen' }) },

  forgotPassword: { screen: new StackNavigator({
    usersForgotPassScreen: { screen: ForgotPasswordPage },
  }, { headerMode: 'screen' }) },

}, {
  headerMode: 'none',
  transitionConfig: () => fromLeft()  // HERE I ADDED IT
});

It does not work when I added it to a specific route like:

const MainNavigator = StackNavigator({
  mainPages: { screen: MainPages },

  loginPage: { screen: new StackNavigator({
    usersLoginScreen: { screen: LoginPage },
  }, { headerMode: 'screen', transitionConfig: () => fromLeft() }) },   // HERE ON THE LOGIN

  signupPage: { screen: new StackNavigator({
    usersSignupScreen: { screen: SignupPage },
  }, { headerMode: 'screen' }) },

  forgotPassword: { screen: new StackNavigator({
    usersForgotPassScreen: { screen: ForgotPasswordPage },
  }, { headerMode: 'screen' }) },

}, {
  headerMode: 'none',
});

Please help

SafeAreaView doesn't work with this library

Hi,

I'm using SafeAreaView from react-navigation and when I'm trying to add custom transition using this library the SafeAreaView is not taking into account on iOS devices.

Please help.

Not working with DrawerNavigation?

So, I'm building an app with a DrawerNavigator nested in a StackNavigator.
Transitions work like a charm from stack route to stack route, stack route to to drawer route, from drawer route to drawer route.
But no way to use transitions from drawer route to drawer route

Code for stackNav

const handleCustomTransition = ({ scenes }) => {
  const prevScene = scenes[scenes.length - 2];
  const nextScene = scenes[scenes.length - 1];
 
	// Custom transitions go there
	if(prevScene){
		console.log(nextScene.route.routeName || 'undifined prevScreen');
		if ( nextScene.route.routeName === 'AuthHome') {
			return zoomIn();
		} 
		else if ( nextScene.route.routeName === 'DrawerNavigator') {
			console.log('RIGHT')
			return fromRight();
		}
		else if ( nextScene.route.routeName === 'Page3') {
			return fromRight();
		}
	}
  return fadeIn();
}

export default createAppContainer(createStackNavigator(
	{ 
		Disclaimer, 
		AuthHome, 
		Page1, 
		DrawerNavigator, 
	},
	{ 
		headerMode:"none",	
		transitionConfig: (nav) => handleCustomTransition(nav)
	}
))

Code for DrawerNav

const handleCustomTransition = ({ scenes }) => {
  const prevScene = scenes[scenes.length - 2];
  const nextScene = scenes[scenes.length - 1];
 
	// Custom transitions go there
	if(prevScene){
		console.log(nextScene.route.routeName || 'undifined prevScreen');
		if ( nextScene.route.routeName === 'AuthHome') {
			return zoomIn();
		} 
		else if ( nextScene.route.routeName === 'DrawerNavigator') {
			console.log('DrawerRIGHT')
			return fromRight();
		}
		else if ( nextScene.route.routeName === 'Page3') {
			return fromRight();
		}
	}
  return fadeIn();
}

export default createAppContainer(createDrawerNavigator(
	{
		Page2, Page3
	},
	{
		transitionConfig: (nav) => handleCustomTransition(nav)
	}
	))

Different transitions for different screens

Hi,

Thank you for the work you have been putting into this, it works awesomely. I would like to ask you if there is a way to do different transitions for different screens. For example I would like that a screen 'About' is accessed by swiping to the right (i.e fromRight), and the user can get back to the 'Welcome' screen by swiping to the left (i.e fromLeft). Excuse my inexperience in react, but is there a way where I could do that ?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.