partage de la couleur du background (theme pour l'instant) a tout les screens 💄

DarkLightTheme
Pierre Ferreira 2 years ago
parent 6d0c984e65
commit 20e4362ef3

@ -24,8 +24,6 @@ import {
import { Provider } from 'react-redux'; import { Provider } from 'react-redux';
export default function App() { export default function App() {
//safearea
//mettre le navigateur ayant le princ
return ( return (
<Provider store={store}> <Provider store={store}>

@ -1,16 +1,22 @@
import { StyleSheet, Text, View, TouchableNativeFeedback } from 'react-native'; import { StyleSheet, Text, View, TouchableNativeFeedback } from 'react-native';
import { useNavigation } from '@react-navigation/native'; import { useNavigation } from '@react-navigation/native';
import { NavigationContainer } from '@react-navigation/native'; import { NavigationContainer } from '@react-navigation/native';
import StackNavigation from '../navigation/StackNavigation' import StackNavigation from '../navigation/StackNavigation'
import { Colors } from 'react-native/Libraries/NewAppScreen'; import { Colors } from 'react-native/Libraries/NewAppScreen';
import {useDispatch, useSelector} from 'react-redux';
//import Button from 'react-bootstrap/Button'; //import Button from 'react-bootstrap/Button';
// @ts-ignore //(ta gueule pour l'erreur sur navigation) // @ts-ignore //(ta gueule pour l'erreur sur navigation)
export default function HomeScreen({navigation}) { export default function HomeScreen({navigation}) {
//@ts-ignore
const mode = useSelector(state => state.appReducer.mode);
return ( return (
<View style={styles.container}> <View style={mode === 'light' ? styles.container_light : styles.container_dark}>
<View style={styles.centered}> <View style={styles.centered}>
<Text style={styles.title}>Mes super Nounours !</Text> <Text style={styles.title}>Mes super Nounours !</Text>
</View> </View>
@ -20,18 +26,20 @@ export default function HomeScreen({navigation}) {
<Text style={styles.textStyle}>Nous sommes actuellement dans l'écran d'accueil !</Text> <Text style={styles.textStyle}>Nous sommes actuellement dans l'écran d'accueil !</Text>
</View> </View>
<View> <View style={styles.MidArea}>
<Text style={styles.t3}> Vous cherchez une entités ? </Text> <View>
<TouchableNativeFeedback onPress={() => navigation.navigate("ListScreen")}> <Text style={styles.t3}> Vous cherchez une entités ? </Text>
<Text style={styles.ButtonStyle}> Consulter la liste global !</Text> <TouchableNativeFeedback onPress={() => navigation.navigate("ListScreen")}>
</TouchableNativeFeedback> <Text style={styles.ButtonStyle}> Consulter la liste global !</Text>
</View> </TouchableNativeFeedback>
</View>
<View> <View>
<Text style={styles.t3}> Vous avez des entités favorites ? </Text> <Text style={styles.t3}> Vous avez des entités favorites ? </Text>
<TouchableNativeFeedback onPress={() => navigation.navigate("ListFav")}> <TouchableNativeFeedback onPress={() => navigation.navigate("ListFav")}>
<Text style={styles.ButtonStyle}>Aller sur la page de favoris !</Text> <Text style={styles.ButtonStyle}>Aller sur la page de favoris !</Text>
</TouchableNativeFeedback> </TouchableNativeFeedback>
</View>
</View> </View>
</View> </View>
) )
@ -56,7 +64,11 @@ export default function HomeScreen({navigation}) {
paddingTop: 50, paddingTop: 50,
paddingBottom: 50, paddingBottom: 50,
margin: 40, margin: 40,
padding: 2,
borderRadius: 15, borderRadius: 15,
borderWidth:5,
borderColor:"#ababab"
}, },
textStyle: { textStyle: {
textAlign: "center", textAlign: "center",
@ -73,5 +85,22 @@ export default function HomeScreen({navigation}) {
t3 :{ t3 :{
fontSize : 20, fontSize : 20,
fontWeight: 'bold', fontWeight: 'bold',
} },
container_light: {
flex: 1,
backgroundColor: '#fff',
alignItems: 'center',
justifyContent: 'center',
},
container_dark: {
flex: 1,
backgroundColor: '#121212',
alignItems: 'center',
justifyContent: 'center',
},
text_light: {
marginBottom: 20,
color: '#000'
},
}); });

@ -3,7 +3,6 @@ import { StatusBar } from 'expo-status-bar';
import React, { useState } from "react"; import React, { useState } from "react";
import {setFavList } from '../redux/actions/action_setFavList'; import {setFavList } from '../redux/actions/action_setFavList';
//redux //redux
import {useDispatch, useSelector} from 'react-redux'; import {useDispatch, useSelector} from 'react-redux';
import {useEffect} from 'react'; import {useEffect} from 'react';
@ -72,9 +71,10 @@ const Item = ({title}) => (
export default function Main(){ export default function Main(){
const [count, setCount] = useState(0); const [count, setCount] = useState(0);
//@ts-ignore
const mode = useSelector(state => state.appReducer.mode);
return ( return (
<View style={styles.container}> <View style={mode === 'light' ? styles.container_light : styles.container_dark}>
<Text>Maman, J4AI UNE LISTE DE FAVORIS ! !</Text> <Text>Maman, J4AI UNE LISTE DE FAVORIS ! !</Text>
<StatusBar style="auto" /> <StatusBar style="auto" />
<Text>{count}</Text> <Text>{count}</Text>
@ -106,5 +106,17 @@ const styles = StyleSheet.create({
}, },
title: { title: {
fontStyle: "italic", fontStyle: "italic",
},
container_light: {
flex: 1,
backgroundColor: '#fff',
alignItems: 'center',
justifyContent: 'center',
},
container_dark: {
flex: 1,
backgroundColor: '#121212',
alignItems: 'center',
justifyContent: 'center',
} }
}); });

@ -33,12 +33,10 @@ const Item = ({url}) => (
export default function ListScreen({navigation}){ export default function ListScreen({navigation}){
const [count, setCount] = useState(0); const [count, setCount] = useState(0);
// get the current theme
//@ts-ignore //@ts-ignore
const theme = useSelector(state => state.theme); const theme = useSelector(state => state.theme);
//@ts-ignore //@ts-ignore
const nList = useSelector(state => state.appReducer.cards); const nList = useSelector(state => state.appReducer.cards);
//@ts-ignore //@ts-ignore
const mode = useSelector(state => state.appReducer.mode); const mode = useSelector(state => state.appReducer.mode);
@ -56,12 +54,6 @@ export default function ListScreen({navigation}){
loadCards(); loadCards();
}, [dispatch]); }, [dispatch]);
//* Themes *//
// define a component mode state
//const [mode, setMode] = useState(theme.mode);
// Handle changing the theme mode // Handle changing the theme mode
//@ts-ignore //@ts-ignore
@ -69,11 +61,6 @@ export default function ListScreen({navigation}){
dispatch(switchMode(mode === 'light' ? 'dark' : 'light')); dispatch(switchMode(mode === 'light' ? 'dark' : 'light'));
} }
// Update the app Incase the theme mode changes
// useEffect(() => {
// setMode(theme.mode);
// }, [theme]);
return ( return (

Loading…
Cancel
Save