analuizaff
4 years ago
3 changed files with 43 additions and 78 deletions
@ -1,57 +0,0 @@ |
|||
import React from "react"; |
|||
import { StyleSheet, Text, View, SafeAreaView, Image, Button, TouchableWithoutFeedback } from "react-native"; |
|||
import * as ImagePicker from "expo-image-picker"; |
|||
import { useState, useEffect } from "react"; |
|||
import * as Permissions from 'expo-permissions'; |
|||
import colors from "../config/colors"; |
|||
import { MaterialCommunityIcons } from "@expo/vector-icons"; |
|||
|
|||
function LaunchCamera() { |
|||
const [imageUri, setImageUri] = useState(null); |
|||
|
|||
const takePicture = async () => { |
|||
await Permissions.askAsync(Permissions.CAMERA); |
|||
const { cancelled, uri } = await ImagePicker.launchCameraAsync({ |
|||
allowsEditing: false, |
|||
}); |
|||
setImageUri(uri); |
|||
}; |
|||
|
|||
const handlePress = () => { |
|||
takePicture(); |
|||
}; |
|||
|
|||
return ( |
|||
<TouchableWithoutFeedback onPress={handlePress}> |
|||
<View style={styles.container}> |
|||
{!imageUri && ( |
|||
<MaterialCommunityIcons |
|||
color={colors.medium} |
|||
name="camera-plus" |
|||
size={40} |
|||
/> |
|||
)} |
|||
{imageUri && <Image source={{ uri: imageUri }} style={styles.image} />} |
|||
</View> |
|||
</TouchableWithoutFeedback> |
|||
); |
|||
} |
|||
|
|||
const styles = StyleSheet.create({ |
|||
container: { |
|||
alignItems: "center", |
|||
backgroundColor: colors.light, |
|||
borderRadius: 15, |
|||
height: 100, |
|||
justifyContent: "center", |
|||
marginVertical: 10, |
|||
overflow: "hidden", |
|||
width: 100, |
|||
}, |
|||
image: { |
|||
height: "100%", |
|||
width: "100%", |
|||
}, |
|||
}); |
|||
|
|||
export default LaunchCamera; |
Write
Preview
Loading…
Cancel
Save
Reference in new issue