코딩중 한 줄의 길이가 길어져 현재 화면에 다 담기지 않을때
alt + z 를 사용하면 화면 내로 자동 줄바꿈을 시켜 가독성을 향상 시킴.
자주 쓰이는 JSX문법들
const styles = StyleSheet.create({
container: {
//영역을 잡는 속성입니다. 따로 자세히 다룹니다.
//flex: 1은 전체 화면을 가져간다는 뜻입니다
flex: 1,
//영역의 배경 색을 결정합니다
backgroundColor: '#fff',
//아래 두 속성은 영역 안의 컨텐츠들의 배치를 결정합니다.
//flex를 자세히 다룰때 같이 자세히 다룹니다
justifyContent:"center",
alignContent:"center"
},
textContainer: {
//영역의 바깥 공간 이격을 뜻합니다(하단 이미지 참조)
margin:10,
//영역 안의 컨텐츠 이격 공간을 뜻합니다(하단 이미지 참조)
padding: 10,
//테두리의 구부러짐을 결정합니다. 지금 보면 조금 둥글죠?
borderRadius:10,
//테두리의 두께를 결정합니다
borderWidth:2,
//테두리 색을 결정합니다
borderColor:"#000",
//테구리 스타일을 결정합니다. 실선은 solid 입니다
borderStyle:"dotted",
},
textStyle: {
//글자 색을 결정합니다. rgb, 값 이름, 색상코드 모두 가능합니다
color:"red",
//글자의 크기를 결정합니다
fontSize:20,
//글자의 두께를 결정합니다
fontWeight:"700",
//가로기준으로 글자의 위치를 결정합니다
textAlign:"center"
}
});
간단한 화면 만들기 예제 코드
간단하게 텍스트와, 스크롤, 이미지를 활용하여 기본적인 화면을 구성했다.
기존 안드로이드 스튜디오를 사용하는것 보다 짧은 코딩으로 더 이쁜 화면을 만들 수 있었던 것 같다.
import React from 'react';
import main from './assets/main.png';
import { StyleSheet, Text, View, Image, TouchableOpacity, ScrollView} from 'react-native';
export default function App() {
return (
<ScrollView style={styles.container}>
<Text style={styles.title}>나만의 꿀팁</Text>
<Image style={styles.mainImage} source={main}></Image>
<ScrollView style={styles.middleContainer} horizontal={true}>
<TouchableOpacity style={styles.middleButton01}><Text style={styles.middleButtonText}>생활</Text></TouchableOpacity>
<TouchableOpacity style={styles.middleButton02}><Text style={styles.middleButtonText}>재테크</Text></TouchableOpacity>
<TouchableOpacity style={styles.middleButton03}><Text style={styles.middleButtonText}>반려견</Text></TouchableOpacity>
<TouchableOpacity style={styles.middleButton04}><Text style={styles.middleButtonText}>꿀팁 찜</Text></TouchableOpacity>
</ScrollView>
<View style={styles.cardContainer}>
<View style={styles.card}>
<Image style={styles.cardImage} source={{uri:"https://storage.googleapis.com/sparta-image.appspot.com/lecture/pizza.png"}}/>
<View style={styles.cardText}>
<Text style={styles.cardTitle}>먹다 남은 피자를 촉촉하게!</Text>
<Text style={styles.cardDesc} numberOfLines={3}>먹다 남은 피자는 수분이 날라가기 때문에 처음처럼 맛있게 먹을 수 없는데요. 이럴 경우 그릇에 물을 받아 전자레인지 안에서 1분 30초에서 2분 정도 함께 돌려주면 촉촉하게 먹을 수 있습니다. 물이 전자레인지 안에서 수증기를 일으키고, 피자에 촉촉함을 더해줍니다.</Text>
<Text style={styles.cardDate}>2022.02.07</Text>
</View>
</View>
</View>
</ScrollView>
)
}
const styles = StyleSheet.create({
container:{
backgroundColor:"#fff"
},
title:{
fontSize:20,
fontWeight:"700",
marginTop:50,
marginLeft:20
},
mainImage:{
width:"90%",
height:200,
borderRadius:10, //모서리 둥글게
marginTop:20,
alignSelf:"center"
},
middleContainer:{
marginTop:20,
marginLeft:10,
height:60
},
middleButton01:{
width:100,
height:50,
padding:15,
backgroundColor:"#fec453",
borderRadius:15,
margin:7
},
middleButton02:{
width:100,
height:50,
padding:15,
backgroundColor:"#fe8d6f",
borderRadius:15,
margin:7
},
middleButton03:{
width:100,
height:50,
padding:15,
backgroundColor:"#9adbc5",
borderRadius:15,
margin:7
},
middleButton04:{
width:100,
height:50,
padding:15,
backgroundColor:"#f886a8",
borderRadius:15,
margin:7
},
middleButtonText:{
color:"#fff",
fontWeight:"700",
textAlign:"center"
},
cardContainer:{
marginTop:10,
marginLeft:10
},
card:{
flex:1,
flexDirection:"row",
margin:10,
},
cardImage:{
flex:1,
width:100,
height:100,
borderRadius:10
},
cardText:{
flex:2,
marginLeft:10
},
cardTitle:{
fontSize:20,
fontWeight:"700"
},
cardDesc:{
fontSize:15
},
cardDate:{
fontSize:10
}
})
'study > App(android)' 카테고리의 다른 글
App 기본_spartacoding 5 (페이지 초기화면 디자인) (0) | 2022.02.11 |
---|---|
App 기본_spartacoding 3(expo setting) (0) | 2022.01.19 |
App 기본_spartacoding 2 (0) | 2022.01.19 |
App 기본_spartacoding (0) | 2022.01.18 |