[React Native] 날씨 어플 만들기 - 레이아웃 설정
컴포넌트들의 style 이 많아질 예정이므로 StyleSheet을 import 해주고 react-native 로 부터
StatusBar 는 expo-status-bar 에서 import 해주자.
입력을 해주고 자동완성에서 어떤 곳의 것을 사용할지 선택하면 된다. 자동완성은 패키지명 끝에서 한단어를 지웠다가 입력하면 자동완성이 뜬다.
import { StatusBar } from "expo-status-bar";
import { React } from "react";
import { StyleSheet, Text, View } from "react-native";
export default function App() {
return (
<View style={styles.container}>
<StatusBar style="dark"></StatusBar>
<View style={styles.city}>
<Text style={styles.cityName}>Daegu</Text>
</View>
<View style={styles.weather}>
<View style={styles.day}>
<Text style={styles.temp}>27</Text>
<Text style={styles.description}>Sunny</Text>
</View>
</View>
</View>
);
}
const styles = StyleSheet.create({
container: { flex: 1, backgroundColor: "rgb(214,230,245)" },
city: {
flex: 1,
justifyContent: "center",
alignItems: "center",
},
cityName: { fontSize: 68, fontWeight: "bold" },
weather: {
flex: 3,
},
day: {
flex: 1,
alignItems: "center",
// backgroundColor: "rgb(239, 255, 253)",
},
temp: {
marginTop: 50,
fontSize: 140,
},
description: {
marginTop: -30,
fontSize: 60,
},
});
CSS
backgroundColor 를 View 마다 주면 레이아웃을 이해하기가 굉장히 쉬워진다. 따라서 구성하기도 쉬워진다.
justifyContent (가로정렬) "center"
alignItems (세로정렬) "center"
fontSize (글자크기)
fontWeight (글자 두께) 관련 이슈
marginTop (윗 공백) : 음수 값도 줄 수 있다.
가운데 정렬하는 것 보다 차라리 margin을 주는 게 낫겠다라는 생각을 할 수 있어야 한다.
fontWeight 관련 이슈
https://github.com/facebook/react-native/issues/26193
안드로이드에서는 "100" ~ "900" 이런 식으로 해도 변화가 없고 대신에 "bold" / "normal" 이 적용가능하다.
- 항상 styles. ~ 으로 CSS 를 적용하는 습관을 가져주자 (오타를 줄여준다)
- Alt + Click 을 하면 변수를 여러개 동시에 서낵할 수 있다. (다중 선택)
Author And Source
이 문제에 관하여([React Native] 날씨 어플 만들기 - 레이아웃 설정), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@sa03134/React-Native-날씨-어플-만들기-레이아웃-설정저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)