位置情報の路線にメニューの表示が追従するように変更
This commit is contained in:
12
Apps.js
12
Apps.js
@@ -14,7 +14,7 @@ import * as Updates from "expo-updates";
|
||||
|
||||
import { AS } from "./storageControl";
|
||||
import { news } from "./config/newsUpdate";
|
||||
import { getStationList, lineList } from "./lib/getStationList";
|
||||
import { getStationList, lineList, lineListPair } from "./lib/getStationList";
|
||||
import { injectJavascriptData } from "./lib/webViewInjectjavascript";
|
||||
import { checkDuplicateTrainData } from "./lib/checkDuplicateTrainData";
|
||||
import { useFavoriteStation } from "./stateBox/useFavoriteStation";
|
||||
@@ -25,6 +25,8 @@ import TrainMenu from "./components/trainMenu";
|
||||
import { EachTrainInfoCore } from "./components/ActionSheetComponents/EachTrainInfoCore";
|
||||
|
||||
import { useNavigation } from "@react-navigation/native";
|
||||
import { useTrainMenu } from "./stateBox/useTrainMenu";
|
||||
import { stationNamePair } from "./lib/getStationList2";
|
||||
/*
|
||||
import StatusbarDetect from './StatusbarDetect';
|
||||
var Status = StatusbarDetect(); */
|
||||
@@ -37,6 +39,7 @@ export default function Apps({ stationData }) {
|
||||
const { favoriteStation } = useFavoriteStation();
|
||||
const { isLandscape, setIsLandscape } = useDeviceOrientationChange();
|
||||
const handleLayout = () => {};
|
||||
const { setSelectedLine } = useTrainMenu();
|
||||
|
||||
//画面表示関連
|
||||
const [iconSetting, setIconSetting] = useState(undefined);
|
||||
@@ -164,6 +167,13 @@ export default function Apps({ stationData }) {
|
||||
});
|
||||
return;
|
||||
}
|
||||
case "currentLines": {
|
||||
const lineInfo = dataSet.currentLines.split("\n")[0];
|
||||
const lineID = stationNamePair[lineInfo];
|
||||
|
||||
setSelectedLine(lineID);
|
||||
return;
|
||||
}
|
||||
default: {
|
||||
return;
|
||||
}
|
||||
|
@@ -38,7 +38,7 @@ export default function TrainMenu({ stationData, style }) {
|
||||
latitude: parseFloat(latlng[0]),
|
||||
longitude: parseFloat(latlng[1]),
|
||||
})),
|
||||
{ edgePadding: { top: 100, bottom: 50, left: 50, right: 50 } } // Add margin values here
|
||||
{ edgePadding: { top: 100, bottom: 100, left: 50, right: 50 } } // Add margin values here
|
||||
);
|
||||
}, [stationPin]);
|
||||
return (
|
||||
@@ -97,6 +97,16 @@ export default function TrainMenu({ stationData, style }) {
|
||||
}}
|
||||
onPress={() => SheetManager.show("TrainMenuLineSelector")}
|
||||
>
|
||||
<Text
|
||||
style={{
|
||||
color: "white",
|
||||
fontWeight: "bold",
|
||||
fontSize: 10,
|
||||
textAlign: "center",
|
||||
}}
|
||||
>
|
||||
▲ ここを押して路線をフィルタリングできます ▲
|
||||
</Text>
|
||||
<Text
|
||||
style={{
|
||||
color: "white",
|
||||
@@ -107,7 +117,7 @@ export default function TrainMenu({ stationData, style }) {
|
||||
>
|
||||
{selectedLine
|
||||
? lineListPair[stationIDPair[selectedLine]]
|
||||
: "ここを押して路線をフィルタリングできます ▲"}
|
||||
: "JR四国 対象全駅"}
|
||||
</Text>
|
||||
</TouchableOpacity>
|
||||
<Text style={{ position: "absolute", bottom: 40 }}>
|
||||
|
@@ -32,3 +32,15 @@ export const stationIDPair = {
|
||||
naruto: "N",
|
||||
seto: "M",
|
||||
};
|
||||
|
||||
export const stationNamePair = {
|
||||
"予讃線(高松 - 松山)": "yosan",
|
||||
"予讃線・内子線(松山 - 内子 - 宇和島)": "uwajima",
|
||||
"予讃線・伊予灘線(向井原 - 伊予大洲)": "uwajima2",
|
||||
"土讃線(多度津 - 高知)": "dosan",
|
||||
"土讃線(高知 - 窪川)": "dosan2",
|
||||
"高徳線(高松 - 徳島)": "koutoku",
|
||||
"徳島線(徳島 - 阿波池田)": "tokushima",
|
||||
"鳴門線(池谷 - 鳴門)": "naruto",
|
||||
"瀬戸大橋線(児島 - 宇多津)": "seto",
|
||||
};
|
||||
|
@@ -696,7 +696,11 @@ const setStrings = () =>{
|
||||
} catch (e) {}
|
||||
}
|
||||
|
||||
const textInsert = new MutationObserver( (mutations) => setStrings());
|
||||
const textInsert = new MutationObserver( (mutations) =>{
|
||||
setStrings();
|
||||
const currentLines = document.querySelector('#topHeader div').innerText;
|
||||
window.ReactNativeWebView.postMessage(JSON.stringify({type:"currentLines",currentLines}));
|
||||
});
|
||||
|
||||
// 監視を開始
|
||||
textInsert.observe(document.getElementById('disp'), {
|
||||
|
Reference in New Issue
Block a user