inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[리뉴얼] 맛집 지도앱 만들기 (React Native & NestJS)

디바이스 별 다른 크기의 화면을 고려하는 반응형UI

1

juhyunk0820

작성한 질문수 4

0

질문 작성시 꼭 참고해주세요

  1. 에러 메세지에서 단서를 찾을 수 있는 경우가 많습니다. 에러 메세지를 읽고 한번 검색해보시는것을 추천드립니다.

  2. 질문글을 작성하실때는, 현재 문제(또는 에러)와 코드나 github을 첨부해주세요.

  3. 개발중인 OS, ReactNative, Node 버전 등의 개발환경을 알려주셔야합니다.

  4. 에러메세지는 일부분이 아닌 전체 상황을 올려주세요. 일부만 보여주시면 답변이 어렵습니다.

     

(에러 일부만 자르거나 일부만 복사하지말아주세요) 

개발을 진행하면서, 사용자마다 서로 다른 핸드폰을 가지고 있고, 디바이스 별 화면 크기가 다릅니다. 이에 대한 반응형 UI대응은 어떻게 대응하는 것이 좋을까요?

react-native typescript nestjs react-query zustand 반응형ui

답변 1

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다. juhyunk0820님.

모든 디바이스에서 적절하게 보일 수 있는 반응형 UI를 구현하는 것은 모바일 앱 개발에서 중요한 과제 중 하나입니다. 반응형 디자인을 잘 구현하려면 다음과 같은 방법들을 고려하면 좋습니다:

  1. 미디어 쿼리와 유사한 접근: 웹에서는 미디어 쿼리를 사용하지만, React Native에서는 Dimensions API를 이용하여 디바이스의 너비와 높이를 가져오고 이를 기준으로 조건부 스타일을 지정합니다. 이를 통해 화면 크기에 따라 동적으로 스타일을 변경할 수 있습니다.

  2. 플렉스 레이아웃(Flexbox): Flexbox는 다양한 화면 크기에서 레이아웃을 쉽게 조정할 수 있도록 돕습니다. justifyContent, alignItems, flexDirection 등의 속성을 적절히 활용하는 것이 좋습니다.

  3. 비율 기반 스타일링: 절대적인 값보다는 비율 기반으로 스타일을 적용하여 화면 크기 변화에 유연하게 대처할 수 있습니다. 예를 들어, 화면의 일정 비율을 차지하도록 너비와 높이를 설정합니다.

  4. 스타일드 컴포넌트(Library 사용): Styled-components나 Emotion과 같은 라이브러리를 사용하여 반응형 디자인 규칙을 더욱 효율적으로 관리할 수 있습니다. 별도의 스타일링 파일을 두어 디바이스 크기를 기준으로 스타일을 조정할 수 있습니다.

  5. 프레임워크 및 플러그인 사용: 다양한 라이브러리나 플러그인 (예: react-native-responsive-screen)도 반응형 UI 구현을 돕습니다. 이러한 도구들을 사용하면 더 효율적으로 반응형 디자인을 구축할 수 있습니다.

더 자세한 방법을 알고 싶으시다면, 다음의 유사 질문 및 답변도 참고하시길 권장드립니다:

위 게시물은 다양한 디바이스 크기에 대처하는 유용한 예시와 방법을 포함하고 있습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

react-native-screens 버전 호환 문제

3

164

1

안드로이드 실행 중 Drawer네비게이션과 MapView 성능 문제

0

111

2

해당 강의 부분은 실제 활용하기에 부족해 제가 해결한 방법입니다.

0

99

1

소스코드가 강의 순서랑 다른가요?

0

76

2

현재 Windows에서 VsCode로 작업 중인데 추후에 IOS도 가능하게 하려면

0

118

2

react-native-fast-image는 react 19 버전에서 설치가 안되나요?

0

212

2

SQL Shell의 역할이 무엇인가요?

0

95

1

혹시 해당 강의에서invalidateQueries를 사용한 이유가 있을까요?

0

80

2

빠르게 실행해보고싶습니다.

0

87

1

강의 수강 순서 관련

0

77

1

애뮬레이터 실행 방법

0

104

2

무료 Apple ID로 실기기 테스트 가능한가요?

0

93

2

ios 실기기 연결

0

72

2

npm run ios에러

0

78

1

10월 삭제 예정인 강의는 이유를 알 수 있을까요?

0

103

1

캘린더 개발 후에 navigation 에 대해서 궁금한 점이 있습니다.

0

54

1

안드로이드 위치 권한 이슈 2가지 문의

0

73

1

지도가 보이려면 음.. 작성해주신 스타일과 다르게

0

76

0

제대로 설치한거같은데 안드로이드랑 ios 둘다 앱실행이 안되는것같아요

0

87

3

강의 내용을 보면 전체적으로 function 함수 키워드를 사용하시는데

0

71

2

강의 3-9 에서 useGetRefreshToken 훅 안에 즉시 함수로 처리하는 이유가 궁금합니다!

0

83

2

사내에서 figma.com 업로드 안되나요?

0

98

1

AWS EC2 + RDS 설정

0

89

2

안드로이드 안켜집니다.

0

95

2