[TIL]230208

graceยท2023๋…„ 2์›” 8์ผ
0

TIL/WIL

๋ชฉ๋ก ๋ณด๊ธฐ
29/37
post-thumbnail

๐Ÿค“ What I Learned Today


์„ธ๋กœ๋ฐฉํ–ฅ์œผ๋กœ ๋งž์ถฐ ํ™”๋ฉด์„ ๊ตฌ์„ฑํ•˜๊ณ  ๋งŒ๋“ค์—ˆ๋Š”๋ฐ ์ƒ๊ฐํ•ด๋ณด๋‹ˆ ์›น๊ณผ ๋‹ค๋ฅด๊ฒŒ ์•ฑ์€ ๊ฐ€๋กœ ๋ฐฉํ–ฅ์œผ๋กœ๋„ ๋งŽ์ด ๋ณด๊ธฐ๋„ ํ•œ๋‹ค๋Š”๊ฑธ ์ƒ๊ฐํ•˜์ง€ ๋ชป ํ–ˆ๋‹ค.

๊ทธ๋Ÿฌ๋ฉด ๊ธฐ๊ธฐํฌ๊ธฐ์— ๋งž์ถฐ ๊ทธ๋ƒฅ demensions ๋ฅผ ์‚ฌ์šฉํ•ด์„œ ๋™์ ํ™”๋ฉด์„ ๊ตฌ์„ฑํ•˜๋ฉด ๋˜๊ฒ ๋‹ค๋ผ๊ณ  ์ƒ๊ฐํ•ด์„œ ์ƒ๊ฐ์—†์ด ํ™”๋ฉด๋งŒ ๋ฐ”๊ฟจ๋Š”๋ฐ ๋ฌธ์ œ๊ฐ€ ์ƒ๊ธฐ๊ณ  ๋ง์•˜๋‹ค..

์•ˆ๋“œ๋กœ์ด๋“œ๋Š” ๊ดœ์ฐฎ์€๋ฐ ios ํ™”๋ฉด์—์„œ ๊ฐ€๋กœ ๋ฐฉํ–ฅ์œผ๋กœ ๋Œ๋ฆฌ๋ฉด ํ‚ค๋ณด๋“œ๊ฐ€ ํ™”๋ฉด์„ ๋‹ค ๊ฐ€๋ ค๋ฒ„๋ฆฌ๋Š” ๊ฒƒ ์ด์—ˆ๋‹ค.


๋งํฌ๋กœ ๋”ฐ๋กœ ์ •๋ฆฌํ•ด๋‘” ๊ฐœ๋… โžก๏ธ ๊ฐ€๋กœํฌ๊ธฐ๋กœ ๋ฐฉํ–ฅ์ „ํ™˜ํ•˜๊ธฐ




๐Ÿš€ Challenges Experienced



ios์—์„œ์˜ ๋ฌธ์ œ

์„ธ๋กœ๋ฐฉํ–ฅ์—์„œ๋Š” ์ž˜ ๋‚˜์˜ค๋˜ ํ‚ค๋ณด๋“œ๊ฐ€ ๊ฐ€๋กœ๋ฐฉํ–ฅ์œผ๋กœ ๋ฐ”๊พธ๋ฉด ํ™”๋ฉด์„ ๊ฐ€๋ ค ์•ฑ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๊ฒŒ ๋˜์—ˆ๋‹ค.๐Ÿฅฒ

์„ธ๋กœ๋ฐฉํ–ฅ์ด๊ณ 



๊ฐ€๋กœ๋ฐฉํ–ฅ์œผ๋กœ ๋ฐ”๊พธ๋ฉด ๋‚ด ํ™”๋ฉด ์–ด๋””๊ฐ”๋‹ด...?






๐Ÿค” Code Snippets



ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์€ KeyboardAvoidingView, ScrollView ์‚ฌ์šฉํ•˜๊ธฐ...!

import { KeyboardAvoidingView, ScrollView } from "react-native";
//keyboardAvoidingView๋Š” ๋‹ค๋ฅธ ์ฝ˜ํ…์ธ  ๋˜๋Š” ์ž…๋ ฅ๋ž€์„ ํฌํ•จํ•˜๋Š”
//๋‹ค๋ฅธ ์ฝ˜ํ…์ธ ๋ฅผ ๊ฐ์‹ธ๋Š”๋ฐ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์ปดํฌ๋„ŒํŠธ

//ํ‚ค๋ณด๋“œ๊ฐ€ ์—ด๋ฆด๋•Œ๋งˆ๋‹ค ์ž…๋ ฅ ์š”์†Œ ๋ฐ ๋‹ค๋ฅธ ์š”์†Œ๊ฐ€ ํ™”๋ฉด ์œ„๋กœ ์˜ฌ๋ผ๊ฐ€ ํ‚ค๋ณด๋“œ๊ฐ€ ์—ด๋ ค๋„ ์—‘์„ธ์Šคํ•  ์ˆ˜ ์žˆ๋‹ค.

//ScrollView ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์Šคํฌ๋กค๋ง์„ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ๋‹ค.
//๊ณต๊ฐ„์ด ๋ถ€์กฑํ•  ๊ฒฝ์šฐ ์Šคํฌ๋กค๋ง์ด ๋˜๋Š” ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค๊ฐ€ ๋ช…ํ™•ํžˆ ์ •์˜๋˜์–ด ์žˆ๋‹ค.

function Start()  {
	
	const { width, height } = useWindowDimensions();
	
	const marginTopDistance = height < 380 ? 30 : 100;

	return (
		...์ƒ๋žต
	<ScrollView style={styles.screen}>
		<KeyboardAvoidingView style={styles.screen} behavior="position">
			<View style={[styles.rootCantainer, {marginTop: marginTopDistance}]>
		</KeyboardAvoidingView>	
	</ScrollView>
)

}

const styles = StyleSheet.create({
	screen: {
		flex:1,
	}
})
profile
๋ฏธ๋ž˜์˜ ๊ฐœ๋ฐœ์ž!

0๊ฐœ์˜ ๋Œ“๊ธ€