blazerapp/app/Settings.js

106 lines
2.6 KiB
JavaScript
Raw Normal View History

2021-01-01 00:23:17 -05:00
import React from 'react';
2020-12-21 02:01:08 -05:00
import {
SafeAreaView,
StyleSheet,
ScrollView,
View,
Text,
StatusBar,
Modal,
TouchableHighlight,
Image,
2021-01-01 00:23:17 -05:00
FlatList,
TouchableOpacity,
2020-12-21 02:01:08 -05:00
} from 'react-native';
import {
Header,
LearnMoreLinks,
Colors,
DebugInstructions,
ReloadInstructions,
} from 'react-native/Libraries/NewAppScreen';
2021-01-01 00:23:17 -05:00
2020-12-21 02:01:08 -05:00
import styles from './styles/morestyles'
2021-01-01 00:23:17 -05:00
import LinearGradient from 'react-native-linear-gradient'
import Images from './Images'
2021-01-01 00:23:17 -05:00
import { NavigationContainer } from '@react-navigation/native'
import { createStackNavigator } from '@react-navigation/stack'
import I18n from './i18n';
import Language from './Language'
import Notifications from './Notifications'
2020-12-21 02:01:08 -05:00
2021-01-01 00:23:17 -05:00
const Stack = createStackNavigator()
class SettingSwitch extends React.Component {
constructor(props) {
2020-12-21 02:01:08 -05:00
super(props)
2021-01-01 00:23:17 -05:00
this.props = props
2020-12-21 02:01:08 -05:00
}
2021-01-01 00:23:17 -05:00
2020-12-21 02:01:08 -05:00
render() {
return (
2021-01-01 00:23:17 -05:00
<View style={{flex:1,backgroundColor:'red'}}>
<FlatList
data={[
{name:"Language",key:"language", img:Images.lang},
{name:"Notifications",key:"notifications", img:Images.notifs},
2021-01-01 00:23:17 -05:00
]}
renderItem={({item})=>
<TouchableOpacity style={styles.moreitem} onPress={()=>this.props.navigation.navigate(item.key)}>
<Image source = {item.img} style = {{height: 40, width: 40, marginRight: 10, tintColor: '#e3e3e3'}}/>
2021-01-01 00:23:17 -05:00
<Text style={styles.moretext}>{I18n.t('settings.' + item.key)}</Text>
</TouchableOpacity>
}
/>
</View>
)
}
}
2020-12-21 02:01:08 -05:00
2021-01-01 00:23:17 -05:00
const background = (<LinearGradient
colors={['#f99', 'white']}
style = {{flex:1,borderBottomColor:'black',borderBottomWidth:0.5}}
/>)
class Settings extends React.Component {
render() {
return (
<NavigationContainer independent={true}>
<Stack.Navigator>
<Stack.Screen
name="Chooser"
component={SettingSwitch}
options={{
title:'Settings',
2021-01-01 00:23:17 -05:00
headerTitleStyle:styles.headerTitle,
headerBackground: ()=>background
}}
/>
<Stack.Screen
name="language"
component={Language}
options={{
title:'Language',
headerTitleStyle:[styles.headerTitle,{alignSelf:'center'}],
headerLeft:null,
headerBackground: ()=>background
}}
/>
<Stack.Screen
name="notifications"
component={Notifications}
options={{
title:'Notifications',
headerTitleStyle:[styles.headerTitle,{alignSelf:'center'}],
headerLeft:null,
headerBackground: ()=>background
}}
/>
2021-01-01 00:23:17 -05:00
</Stack.Navigator>
</NavigationContainer>
2020-12-21 02:01:08 -05:00
)
}
}
2021-01-01 00:23:17 -05:00
2020-12-21 02:01:08 -05:00
export default Settings;