1import { Ionicons } from '@expo/vector-icons';
2import AppLoading from 'expo-app-loading';
3import { Asset } from 'expo-asset';
4import React, { useEffect, useState } from 'react';
5import { StyleSheet, View } from 'react-native';
6
7export default function App() {
8  const [assetsAreLoaded, setAssetsAreLoaded] = useState(false);
9
10  useEffect(() => {
11    loadAssetsAsync(setAssetsAreLoaded);
12  }, []);
13
14  if (!assetsAreLoaded) {
15    return <AppLoading />;
16  }
17
18  return !assetsAreLoaded ? (
19    <AppLoading />
20  ) : (
21    <View style={styles.container}>
22      <Ionicons name="md-options" size={28} />
23    </View>
24  );
25}
26
27async function loadAssetsAsync(
28  setAssetsAreLoaded: React.Dispatch<React.SetStateAction<boolean>>
29): Promise<void> {
30  try {
31    await Asset.loadAsync([require('./assets/icon.png')]);
32  } finally {
33    setAssetsAreLoaded(true);
34  }
35}
36
37const styles = StyleSheet.create({
38  container: {
39    flex: 1,
40  },
41});
42