forked from Ninjalama/streamyfin_mirror
28 lines
608 B
TypeScript
28 lines
608 B
TypeScript
import { useState, useEffect } from "react";
|
|
import { Dimensions, ScaledSize } from "react-native";
|
|
|
|
const useScreenDimensions = (): ScaledSize => {
|
|
const [screenDimensions, setScreenDimensions] = useState(
|
|
Dimensions.get("screen")
|
|
);
|
|
|
|
useEffect(() => {
|
|
const updateDimensions = () => {
|
|
setScreenDimensions(Dimensions.get("screen"));
|
|
};
|
|
|
|
const dimensionsListener = Dimensions.addEventListener(
|
|
"change",
|
|
updateDimensions
|
|
);
|
|
|
|
return () => {
|
|
dimensionsListener.remove();
|
|
};
|
|
}, []);
|
|
|
|
return screenDimensions;
|
|
};
|
|
|
|
export default useScreenDimensions;
|