-
-
Notifications
You must be signed in to change notification settings - Fork 125
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
encounter blink effect when navigate screens #222
Comments
1641973128598809.mp4 |
Navigator: <Navigator initialRouteName="List" screenOptions={commonStackOptions}>
<Screen name="List" component={ListScreen} options={{ headerShown: false }} />
<Screen
name="Detail"
component={DetailScreen}
options={{ headerShown: false }}
sharedElements={route => {
const { item } = route.params;
return [`item.${item.id}.photo`];
}}
/>
</Navigator> ListScreen: export default function ListScreen() {
const navigation = useNavigation<StackNavigationProp<any>>();
const renderItem = ({ item }: any) => {
return (
<TouchableOpacity activeOpacity={1} onPress={() => navigation.push('Detail', { item })}>
<SharedElement id={`item.${item.id}.photo`}>
<Image source={item.image} style={styles.image} />
</SharedElement>
</TouchableOpacity>
);
};
return <FlatList style={styles.container} data={items} renderItem={renderItem} keyExtractor={item => item.id} />;
} DetailScreen: export default function DetailScreen() {
const navigation = useNavigation();
const route = useRoute();
const { item } = route.params as any;
return (
<TouchableOpacity activeOpacity={1} onPress={navigation.goBack}>
<SharedElement id={`item.${item.id}.photo`}>
<Image source={item.image} style={styles.image} />
</SharedElement>
</TouchableOpacity>
);
} |
Simulator.Screen.Recording.-.iPhone.13.-.2022-01-12.at.16.46.25.mp4 |
issue 1 does not exist on ios |
Same problem |
I think that the problem is relative to the position of the element in the prev and next screen, but I don't know why. I've a working example where if the element in the next screen is positioned lower than the element in the previous screen, then the blink doesn't happen. Even for me the problem is only on Android. |
try on Stack.Navigator.screenOptions or Stack.Screen.options |
tried, not working. it still blinks... |
This is also happening to me, it's kind of frustrating, as it loses all the smoothness. It would be really nice if someone come up with a solution for this. |
i also try this logic but in my case also not work properly please any one suggest me how i can resolve this issue |
Thanks for this amazing library to help improve user experience especially after upgrade to the latest version.
But I also encountered some trouble when using it on android.
issue 1:
when I navigate from ListScreen to DetailScreen, if the image is half on screen, then it will blink.
issue 2:
when I navigate back from DetailScreen to ListScreen, it will blink and I can clearly see there's a blank area goes from left to right.
here is the reproduce repository: sharedElementExample
thank you very much.
The text was updated successfully, but these errors were encountered: