안녕하세요. 가로는 width 퍼센트 또는 flex, 세로는 고정값으로 하는것이 일반적인것 같습니다. 또는 minHeight를 지정하거나, 좀더 세세한 조정을 하는 방법도 있는데요, Dimension 이라는 것을 이용하면 기기의 높이나 넓이를 구할수있어서 이걸로 대응하셔도 됩니다. ex) import { Dimensions } from 'react-native'; const { width, height } = Dimensions.get('window'); // 화면 폭의 90% 카드 const styles = StyleSheet.create({ card: { width: width * 0.9, height: height * 0.3, }, }); //ex) 또는 기기별로 대응 const isSmall = width {title} 또는 Dimension 대신 useWindowDimensions 훅을 이용해서 사용해도됩니다! ex) import { useWindowDimensions } from 'react-native'; function Sheet() { const { width, height, fontScale } = useWindowDimensions(); return ; } 그리고 RN의 Text컴포넌트는 allowFontScaling 이라는 속성이 있는데, 시스템 텍스트 크기를 무시하려면 이걸 사용하시면 됩니다. ex) 이걸 false 로 주게 되면 시스템 자체에서 글씨를 크게 하더라도, 폰트가 커지지않습니다. // 아이콘 라벨, 뱃지 숫자 등 깨지면 안 되는 곳을 선택적으로 대응 하실 수 있습니다. 99+
가끔 엄청 오래걸리긴합니다 🥲 첫 빌드는 괜찮은데 연속으로 하면 몇시간 걸릴때도 있더라구요. 빌드 진행해보시고 오래걸리면 로컬로 해보셔도 좋을것 같습니다. 로컬빌드는 말씀하신 eas build --platform android --local 명령어로 하시면됩니다! 따로 설정은 없고 강의와 같이 eas 사전설정 만 하시면 동작합니다. (npm install -g eas-cli > eas login > eas build:configure) 빌드 명령어 입력하시고, 빌드가 끝나면 프로젝트 루트에 build-1779978290886.aab 이런식으로 aab 파일이 생성됩니다! 강의처럼 expo에서 다운받아서 업로드 하는대신, 이 생성된 파일을 직접 업로드하시면 됩니다.
Dimension 이라는것을 사용하면 됩니다! 또는 최대한 flex나 퍼센트를 이용해서 구현하는것이 좋을것같습니다. Dimension은 사용자의 화면의 넓이나 높이를 구할수있는 API인데요, 아래처럼 사용하면 기기의 넓이와 높이를 구할수가있습니다. 따라서 해당값을 이용해서 세세하게 대응할수도 있습니다. ex) 사용자 기기높이가 700 보다 크면 폰트사이즈를 키우기 fontSize : windowHeight > 700 ? 20 : 12 const windowWidth = Dimensions.get('window').width; const windowHeight = Dimensions.get('window').height;
아직 latest 기준으로는 54버전으로 설치되는데, npx create-expo-app@latest --template default@sdk-55 명령어로 프로젝트를 생성하셨나요? 그래도 탭 네비게이션을 사용하는 구조 자체가 바뀐 것은 아니기 때문에, 강의에서처럼 (tabs) 폴더를 직접 생성해서 사용하셔도 됩니다. Expo Router에서는 (tabs) 처럼 괄호로 된 폴더를 route group으로 사용해서 탭 네비게이션을 구성하는 패턴이 여전히 일반적으로 사용됩니다. 그래서 강의와 동일하게 (tabs) 폴더를 만들어서 진행하셔도 됩니다.
맛집앱도 수강하고 계시군요! 커뮤니티앱 백엔드쪽도 nest를 사용해서 구현되어있습니다. 맛집앱 서버부분이 어렵지 않으셨다면 커뮤니티앱 백엔드쪽도 구현하실수 있을거라 생각하긴 합니다! 그런데 서버강의라면 별도의 강의를 말씀하시는걸까요 아니면 커뮤니티앱의 서버부분에 대한 강의일까요??