import React, { useState, useEffect, useLayoutEffect } from "react"; import { View, Text, TouchableOpacity, Linking, ScrollView, Image, useWindowDimensions, ToastAndroid, Platform } from "react-native"; import { createStackNavigator } from "@react-navigation/stack"; import { TransitionPresets } from "@react-navigation/stack"; //import * as ExpoFelicaReader from "../../modules/expo-felica-reader/src"; import * as Updates from "expo-updates"; import { AS } from "../../storageControl"; import { Switch } from "react-native-elements"; import AutoHeightImage from "react-native-auto-height-image"; import { SettingTopPage } from "./SettingTopPage"; import { LayoutSettings } from "./LayoutSettings"; import { FavoriteSettings } from "./FavoriteSettings"; import { WidgetSettings } from "./WidgetSettings"; import { NotificationSettings } from "./NotificationSettings"; import { LauncherIconSettings } from "./LauncherIconSettings"; const Stack = createStackNavigator(); export default function Setting(props) { const { navigation: { navigate }, } = props; const [iconSetting, setIconSetting] = useState(false); const [mapSwitch, setMapSwitch] = useState(false); const [stationMenu, setStationMenu] = useState(false); const [usePDFView, setUsePDFView] = useState(false); const [trainMenu, setTrainMenu] = useState(false); const [trainPosition, setTrainPosition] = useState(false); const [headerSize, setHeaderSize] = useState("default"); const [startPage, setStartPage] = useState(false); const [uiSetting, setUiSetting] = useState("tokyo"); useLayoutEffect(() => { AS.getItem("iconSwitch").then(setIconSetting); AS.getItem("mapSwitch").then(setMapSwitch); AS.getItem("stationSwitch").then(setStationMenu); AS.getItem("usePDFView").then(setUsePDFView); AS.getItem("trainSwitch").then(setTrainMenu); AS.getItem("trainPositionSwitch").then(setTrainPosition); AS.getItem("headerSize").then(setHeaderSize); AS.getItem("startPage").then(setStartPage); AS.getItem("uiSetting").then(setUiSetting); }, []); const testNFC = async () => { //const result = await ExpoFelicaReader.scan(); //alert(result); }; const updateAndReload = () => { Promise.all([ AS.setItem("iconSwitch", iconSetting.toString()), AS.setItem("mapSwitch", mapSwitch.toString()), AS.setItem("stationSwitch", stationMenu.toString()), AS.setItem("usePDFView", usePDFView.toString()), AS.setItem("trainSwitch", trainMenu.toString()), AS.setItem("trainPositionSwitch", trainPosition.toString()), AS.setItem("headerSize", headerSize), AS.setItem("startPage", startPage.toString()), AS.setItem("uiSetting", uiSetting), ]).then(() => Updates.reloadAsync()); }; return ( {(props) => ( )} {(props) => ( )} {(props) => ( )} {Platform.OS === 'android' && {(props) => } } {(props) => } {(props) => } ); }