-
Notifications
You must be signed in to change notification settings - Fork 0
/
App.js
94 lines (87 loc) · 2.16 KB
/
App.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
/* Ian McManus
757299
1/29/2023
Calculate the cost of a certain number of tickets at a
rate of $99.99 per ticket */
import React, { useState } from 'react';
import { StatusBar } from 'expo-status-bar';
import { StyleSheet, Text, TextInput, View, Pressable, Button, Image } from 'react-native';
import * as SplashScreen from 'expo-splash-screen';
const TicketVault = () => {
//Splashscreen logic
SplashScreen.preventAutoHideAsync();
setTimeout(SplashScreen.hideAsync, 2000);
const [text, setText] = useState('');
var [textBox, setTextBox] = useState(false);
return(
<><View style={styles.container}>
<Text style={styles.title}>Ticket Vault</Text>
<View style={styles.inputContainer}>
<TextInput
style={styles.textBox}
placeholder='Number of Tickets'
onChangeText={newText => setText(newText)}
defaultValue={null}
keyboardType={'default'} />
</View>
<Pressable style={styles.buttonContainer}>
<Button color='#000000' title="Find The Cost" onPress={() => setTextBox(true)} />
</Pressable>
{textBox ? <Text style={styles.price}>Ticket Cost: ${(text * 99.99).toFixed(2)}</Text> : null}
</View>
<View style={styles.pics}>
<Image style={styles.pics} source={require('./assets/concert.png')} />
</View></>
);
};
export default TicketVault;
const styles = StyleSheet.create({
container: {
flex: 1,
backgroundColor: '#fff',
alignItems: 'center',
},
imageContainer: {
flex: 1,
paddingTop: 58,
},
image: {
width: 100,
},
title: {
paddingTop: 100,
textAlign: 'center',
fontSize: 60,
},
textBox: {
height: 60,
borderColor: 'gray',
borderWidth: 2,
fontSize: 43,
width: '80%',
},
inputContainer: {
paddingTop: 30,
paddingBottom: 20,
},
buttonContainer: {
backgroundColor: '#f98b88',
height: 40,
width: '40%',
color: '#000000',
justifyContent: 'center',
alignContent: 'center',
},
buttonStyle: {
fontSize: 20,
alignContent: 'center',
},
price: {
fontSize: 40,
paddingTop: 50,
},
pics: {
width:'100%',
paddingBottom: 100,
},
});