앱개발 2주차

서샘이·2022년 3월 1일
0

react native 공식사이트 사용하면 tag 자세히 알 수 있음.

  1. ScrollView
    import React from 'react';
    import { StyleSheet, Text, View, ScrollView } from 'react-native';

export default function App() {
return (


영역을 충분히 갖는 텍스트 입니다!


영역을 충분히 갖는 텍스트 입니다!


영역을 충분히 갖는 텍스트 입니다!


영역을 충분히 갖는 텍스트 입니다!


영역을 충분히 갖는 텍스트 입니다!


영역을 충분히 갖는 텍스트 입니다!


영역을 충분히 갖는 텍스트 입니다!


);
}

const styles = StyleSheet.create({
container: {
flex: 1,
backgroundColor: '#fff',
},
textContainer: {
height:100,
borderColor:'#000',
borderWidth:1,
borderRadius:10,
margin:10,
},
textStyle: {
textAlign:"center"
}
});

  1. Button tag
    import React from 'react';
    import { StyleSheet, Text, View, Button, Alert } from 'react-native';

export default function App() {
return (


아래 버튼을 눌러주세요
{/ 버튼 onPress 속성에 일반 함수를 연결 할 수 있습니다. /}
<Button
style={styles.buttonStyle}
title="버튼입니다 "
color="#f194ff"
onPress={function(){
Alert.alert('팝업 알람입니다!!')
}}
/>
{/ ES6 문법으로 배웠던 화살표 함수로 연결 할 수도 있습니다. /}
<Button
style={styles.buttonStyle}
title="버튼입니다 "
color="#FF0000"
onPress={()=>{
Alert.alert('팝업 알람입니다!!')
}}
/>


);
}

const styles = StyleSheet.create({
container: {
flex: 1,
backgroundColor: '#fff',
},
textContainer: {
height:100,
margin:10,
},
textStyle: {
textAlign:"center"
},
});

  1. TouchableOpacity tag = 영역처럼 나뉘었는데 온버튼을 설정하여 클릭했을 때 어떠한 기능을 실행할 수 있음(자주 사용됨.)
    예시) 카카오톡 채팅방 목록 -> 클릭 시 채팅방이 열림
    import React from 'react';
    import { StyleSheet, Text, View, ScrollView, TouchableOpacity, Alert } from 'react-native';

export default function App() {
const customAlert = () => {
Alert.alert("TouchableOpacity에도 onPress 속성이 있습니다")
}
return (


영역을 충분히 갖는 텍스트 입니다!

);
}

const styles = StyleSheet.create({
container: {
flex: 1,
backgroundColor: '#fff',
},
textContainer: {
height:100,
borderColor:'#000',
borderWidth:1,
borderRadius:10,
margin:10,
},
textStyle: {
textAlign:"center"
}
});

  1. Image tag(외부 이미지)
    import React from 'react';
    import { StyleSheet, Text, View, Image } from 'react-native';
    //이렇게 상단에 가져와 사용할 이미지를 불러옵니다
    import favicon from "./assets/favicon.png"

export default function App() {
return (

{/이미지 태그 soruce 부분에 가져온 미지 이름을 넣습니다 /}
<Image
source={{uri:'https://images.unsplash.com/photo-1424819827928-55f0c8497861?fit=crop&w=600&h=600%27'}}
// 사용설명서에 나와 있는 resizeMode 속성 값을 그대로 넣어 적용합니다
줄이 너무 길 경우, alt + z 혹은 option + z 줄바뀜
resizeMode={"cover"}
style={styles.imageStyle}
/>

);
}

const styles = StyleSheet.create({
container: {
flex: 1,
backgroundColor: '#fff',
//혹시 미리 궁금하신 분들을 위해 언급하자면,
//justifyContent와 alignContent는 영역 안에 있는 콘텐츠들을 정렬합니다
justifyContent:"center",
alignContent:"center"
},
imageStyle: {
width:"100%",
height:"100%",
alignItems:"center",
justifyContent:"center"
}
});
5. 자주 사용되는 스타일 속성
import React from 'react';
import { StyleSheet, Text, View, Image } from 'react-native';

export default function App() {
return (


스파르타 코딩클럽!!


);
}

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"
}
});

0개의 댓글