Untitled

 avatar
unknown
plain_text
a year ago
1.2 kB
11
Indexable
import React, { useEffect, useState } from "react";
import { View, Text, StyleSheet } from "react-native";
import NetInfo from "@react-native-netinfo/netinfo";

export default function App() {
  const [isConnected, setIsConnected] = useState(true);

  useEffect(() => {
    const unsubscribe = NetInfo.addEventListener(state => {
      setIsConnected(state.isConnected && state.isInternetReachable);
    });

    return () => unsubscribe();
  }, []);

  return (
    <View style={{ flex: 1 }}>
      {/* Barra de aviso */}
      {!isConnected && (
        <View style={styles.offlineContainer}>
          <Text style={styles.offlineText}>Sem conexão com a internet</Text>
        </View>
      )}

      {/* Conteúdo do app */}
      <View style={styles.content}>
        <Text>Meu App React Native 🚀</Text>
      </View>
    </View>
  );
}

const styles = StyleSheet.create({
  offlineContainer: {
    backgroundColor: "red",
    height: 30,
    justifyContent: "center",
    alignItems: "center",
  },
  offlineText: {
    color: "#fff",
    fontWeight: "bold",
  },
  content: {
    flex: 1,
    justifyContent: "center",
    alignItems: "center",
  },
});
Editor is loading...
Leave a Comment