アプリケーションの画面順に作成
33674 ワード
基本スケルトンの作成
import React from 'react';
import main from './assets/main.png';
import { StyleSheet, Text, View, Image, TouchableOpacity, ScrollView} from 'react-native';
export default function App() {
console.disableYellowBox = true;
//return 구문 밖에서는 슬래시 두개 방식으로 주석
return ()
}
const styles = StyleSheet.create({})
1.裏に書く.scrollviewを作成した後
着物を着る
着るとき一番上の子用容器
const styleページ用
container:{}
2.画像を保存してassetフォルダに入れます.
3.スクロールビュー全体にテキストを含める必要があるため、スクロールビューにテキストを入れる
text/textの間に含める文字またはヒントを追加する
スタイル
const styleページ用
前に書いた内容}を閉じます
新しいtitle:{}で開く
titleのフォントサイズまたは余白を追加
4.画像を入れる
ページのimage source={main}を返します.
スタイル
const styleページ用
mainImage:{}
5.ボタンを4つくらい作る
returnページでのスクロールビューの作成
書き込み
この4つをコピーしてボタンを作成します.
スタイル
const styleページ用
stylesで指定した名前middlecontainer:writeを使用する
return端でスタイルをTouchableOptityとして着用
4つのTouchableOptityの中の服はすべて同じように複製します
middlebutton番号を付ける
return端子にtextにスタイルを付ける
textは同じデザインを採用し、そのまま4つコピー
const styleページ用
stylesで指定した名前middlecontainer:writeを使用する
白なのでエリアが見えないので、まずは黒線でエリアを作ります.
borderwidth:1に設定し、後で削除します.
MarginTopとMarginLeft、領域をheightに設定
const styleページ用
middleButton:書き込み
widthとheightをスケッチして、大きさをよく変えます
ドラッグ&ドロップ
backgroundColorとborderRadiusの決定
領域にあまり近づかないでmarginで
middleButtonが作成した4つのボタンをコピーし、ボタン番号のみを変更します.
const styleページ用
middleButtonText:書き込み
color、fontWeight、textAlign(フォント整列)の使用
middleContainerのborderエッジを削除します.
書き返す
数式ドキュメントで水平を検索し、ボタンをスクロールしてビューを左右に移動します.horizontal={true}
書き返す
カードを書く
[スタイル別ドレッシングカード](By Style Ramp Card)コンテンツの割り当て
書き返す
最初のカード領域を作成します.
中にはuri:「」で住所を書きます.
自分で閉じたラベルなので閉じます/>
カードテキストの作成
その中にタイトルの内容の日付をつけて、また中を触った.
スタイルの服を着るcardTextの指定
スタイルの服を着るcardTitle、cardDesc、cardDateの決定
イメージも衣装スタイルcardImageとして指定
インラインテキスト
const styleページ用
前に付けて、文を完成します.
CardContainer:書き込み
borderWidth:1,//エリアを表示するため
MarginTop、MarginLeftを使用して領域を指定する
const styleページ用
前に付けて、文を完成します.
stylesで指定した名前cardを使用する:書き込み
flexを使用:中のテキストと画像には独自の領域があります.
flex:1、一つのエリアを全部食べる
flexDirection:rowの内容を横に並べます.
残金
const styleページ用
cardImageとcardTextのflexを1:2に設定
だからCardImage:flex:1課
cardText:flex:2
画像は一意の領域がある場合に表示されます(widthとheightを使用して領域を指定する場合やflexを使用して領域を指定する場合)
cardImage:{
flex:1,
cardText:{
flex:2,
cardImageでは画像が正方形なのでwidthとheightを100に設定します
borderRadius円の使用
cardTextはflex 2です.
flexDirection:「column」//上下位置決め.デフォルト値を書き込む必要はありません
MarginLeftの使用
cardTitle:{},
cardDesc:{},
cardDate:{},書き込み後
cardTitleのfontsize,fontWeight(厚め)
CardDescのfontsize
cardDateのfontsize
returnページにcarddescページに書く
numberofLines={3}3行のサムネイルのみ表示
最終ステータス
import React from 'react';
import main from './assets/main.png';
import { StyleSheet, Text, View, Image, TouchableOpacity, ScrollView} from 'react-native';
export default function App() {
console.disableYellowBox = true;
//return 구문 밖에서는 슬래시 두개 방식으로 주석
return (
/*
return 구문 안에서는 {슬래시 + * 방식으로 주석
*/
<ScrollView style={styles.container}>
<Text style={styles.title}>나만의 꿀팁</Text>
<Image style={styles.mainImage} source={main}/>
<ScrollView style={styles.middleContainer} horizontal indicatorStyle={"white"}>
<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 */}
<View style={styles.card}>
<Image style={styles.cardImage} source={{uri:"https://firebasestorage.googleapis.com/v0/b/sparta-image.appspot.com/o/lecture%2Fpizza.png?alt=media&token=1a099927-d818-45d4-b48a-7906fd0d2ad3"}}/>
<View style={styles.cardText}>
<Text style={styles.cardTitle}>먹다 남은 피자를 촉촉하게!</Text>
<Text style={styles.cardDesc} numberOfLines={3}>먹다 남은 피자는 수분이 날라가기 때문에 처음처럼 맛있게 먹을 수 없는데요. 이럴 경우 그릇에 물을 받아 전자레인지 안에서 1분 30초에서 2분 정도 함께 돌려주면 촉촉하게 먹을 수 있습니다. 물이 전자레인지 안에서 수증기를 일으키고, 피자에 촉촉함을 더해줍니다.</Text>
<Text style={styles.cardDate}>2020.09.09</Text>
</View>
</View>
</View>
</ScrollView>
);
}
const styles = StyleSheet.create({
container: {
//앱의 배경 색
backgroundColor: '#fff',
},
title: {
//폰트 사이즈
fontSize: 20,
//폰트 두께
fontWeight: '700',
//위 공간으로 부터 이격
marginTop:50,
//왼쪽 공간으로 부터 이격'
marginLeft:20
},
mainImage: {
//컨텐츠의 넓이 값, 화면의 90%만 이미지채운다
width:'90%',
//컨텐츠의 높이 값
height:200,
//컨텐츠의 모서리 구부리기
borderRadius:10,
marginTop:20,
//컨텐츠 자체가 앱에서 어떤 곳에 위치시킬지 결정(정렬기능), flex없어도 가운데정렬
//각 속성의 값들은 공식문서에 고대로~ 나와 있음
alignSelf:"center"
},
middleContainer:{
//borderWidth:1, //흰색바탕이라 영역을 알수 없으니 영역을 먼저 검정선 표시후 나중에 다 만들고 삭제예정
marginTop:20,
marginLeft:10,
height:60
},
middleButton01: {
width:100,
height:50,
padding:15, //버튼안에 글자가 떨어져있으니
backgroundColor:"#fdc453",
borderColor:"deeppink",
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: {
//borderWidth:1, //영역을 보기위해 나중에 삭제예정
marginTop:10,
marginLeft:10
},
card:{
flex:1, //카드안에 이미지와 텍스트가 자기만의 고유영역 있으니 flex사용 1은 영역 하나를 다 잡아먹음
//컨텐츠들을 가로로 나열
//세로로 나열은 column(디폴트 값임)
flexDirection:"row",
margin:10,
borderBottomWidth:0.5,
borderBottomColor:"#eee",
paddingBottom:10
},
cardImage: {
flex:1,
width:100,
height:100,
borderRadius:10,
},
cardText: {
flex:2,
flexDirection:"column",//상하로 위치되게끔. 기본값이라 안써도 됨
marginLeft:10,
},
cardTitle: {
fontSize:20,
fontWeight:"700"
},
cardDesc: {
fontSize:15
},
cardDate: {
fontSize:10,
color:"#A6A6A6",
}
});
```
Reference
この問題について(アプリケーションの画面順に作成), 我々は、より多くの情報をここで見つけました https://velog.io/@luo82/앱화면-순서대로-작성하기テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol