๋ชฉ๋กDEVELOPE (113)
๐ฑ dreaming DiNO

์์ ๋ ๋ด๊บผ ์ ๋ค๋ฅผ๊น,,, strings.xml ์ ๊ฐ์ ธ๋ค ์ธ string๋ค์ ์ ๋ฆฌ main.xml 1. ๋ ์ด์์ -> constraint๋ก ๋ณ๊ฒฝ ํ, recyclerview ์ถ๊ฐ 2. id๋ ์ง์ "recyclerView" (์์ผ๋ก design์์ ํ์ง ๋ง๊ณ code์์ ์ง์ ํ๋ ๋ฒ๋ฆ์ ๋ค์ด์) my_row.xml ์ถ๊ฐ CardView ์์ ImageView, TextView1, TextView2 ์ธ๊ฐ ์ถ๊ฐํ์ฌ id ๊ฐ ์ง์ ! MainActivity.java 1. Title ๊ณผ Description์ ์จ์ค String [] ์ ์ธ๊ณผ ๋ง๋ค์ด์ค recyclerView ์ ์ธ 2. drawable์ ๋ฃ์ด์ค images๋ค์ ์ฐพ์์ ๋ฐฐ์ด์ ํ ๋น (image๋ค์ int) recyclerView๋ฅผ ํธ๋ค๋งํ MyAda..

dimen.xml ์์ฑ ๋ฐ ๋ด์ฉ ์ฐธ์กฐ main.xml ์ ์๋ก ์ถ๊ฐํด์ ๋ฒํผ๋ง๋ ๊ฒ ์๋, ๋ฏธ๋ฆฌ ๋ง๋ค์ด๋์ Button.java๋ฅผ ์ ์ฉ ์ ์์ค๊ฐ ๋ณธ๋ ์๋ ์์ค๊ฐ ์์ ๋ณธ

Mac, IntelliJ, Spring boot, Gradle ์์ ํ๊ฒฝ build.gradle ํด๋๊ตฌ์กฐ์ application.properties (1. ์์ ํ์ผ ์ ์ฅ ๊ฒฝ๋ก๋ฅผ ์ ์ฅํด์ ๋ถ๋ฌ์ค๋ ค๊ณ ํ์ -> ์ถํ ์ฐ์ง ์๊ฒ ๋จ 2. spring jsp๋ฅผ ์ค์ ํ๋ ค๊ณ ์ค์ , ๊ทผ๋ฐ ๋์ง ์์ ใ ใ ใ ) HomeContoller.java ์ฒ์์ ์ ๋ก๋ ๋ฐ์ ํ์ผ์ ๋ด์ปดํจํฐ์ ์ ์ฅ-> ์ ์ฅ๋ ๊ฒฝ๋ก์ ํ์ผ๋ช ์ ์ฝ์ด๋ค์ด๋ ๋ฐฉ์์ ํ์์ ๊ทผ๋ฐ ๊ทธ๋ ๊ฒ ๋ง์ด ์์ด๋ค๊ณ ํด์ file์์ ๋ฐ๋ก getInputStream๊ฐ์ฒด๋ฅผ ๋ฃ์ด์ค์ ์์ ํ์ผ์ ์ฝ๊ฒํจ (Refactoring) ๊ฐ์ ํ์ผ ์๋ ์๋ ๋ถ๋ถ์ธ๋ฐ, jspํธ์ถํ๋ ค๊ณ ํ ์คํธ ํ๊ณ ์๋๋ฐ ๋์ค์ง ์์; jsp๊ฐ ํธ์ถ๋์ง ์๊ณ string test๋ง ๋์ฌ๋ฟ์ด๋ค ใ ใ Da..

Tab 3 ๊ฐ๋ฅผ ์ถ๊ฐํ ๊บผ๊ณ ๊ฐ ํญ๋ง๋ค Fragment 1,2,3 ์กด์ฌ ์์ญ ์ ๊ตฌ๋ถํด๋ณด๊ธฐ

ํ๋ก์ ํธ ๊ตฌ์กฐ activity_main.xml ์ ์ฌ๋ฆด ๋๊ฐ์ fragment๋ฅผ ์ถ๊ฐํ๋ค. layout_height = "0dp"๋ฅผ ์ฃผ๊ณ weight ๋ฅผ ๊ฐ๊ฐ 1์ฉ ๋ฃ์ด 1:1 ๋๊ฐ์ ๋ถํ ๋ก ๋ง๋ ๋ค fragment_list.xml (๋ฒํผ๋ง ์๋ fragment) ๋ฒํผ์ ๋ฐ๋ผ ์ด๋ฏธ์ง๋ฅผ ๋ณด์ฌ์ค fragment_viewer.xml (์ผ๋จ ๋งจ์ฒ์์ ๋ณด์ฌ์ค ๊ธฐ๋ณธ imageView๋ฅผ ์ถ๊ฐํด ๋์ ์ํ)

JDK(Java Development Kit, ์๋ฐ ๊ฐ๋ฐ ๋๊ตฌ) ์ ์ ์๋ฐ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ตฌ์ถํ๊ธฐ ์ํ ํต์ฌ ํ๋ซํผ์ ๊ตฌ์ฑ์์(?? ๋ฌด์จ ๋ง์ธ๊ฐ) 2. ์๋ฐ ํ๋ก๊ทธ๋๋ฐ์ 3๋ ํต์ฌ ๊ธฐ์ ํจํค์ง 2โ1. JVM(Java Virtual Machine, ์๋ฐ ๊ฐ์๋จธ์ ) 2โ2. JRE(Java Runtime Environment, ์๋ฐ ๋ฐํ์ ํ๊ฒฝ) JVM์ ์์ฑํ๋ ๋์คํฌ ์์ ๋ถ๋ถ ์๋ฐ ํ๋ก๊ทธ๋จ์ ๊ตฌ๋ํ๊ธฐ ์ํ ๋ ๋ฆฝ ๊ตฌ์ฑ์์์๊ณผ ๋์์ JDK์ ์ผ๋ถ 2โ3. JDK ์์ ์ ์๊ฐ ์ด๋ ต๊ธฐ ๋๋ฌธ์ ์ฝ๊ฒ ๋งํ๋ฉด, ์๋ฐ ๊ธฐ๋ฐ ์ํํธ์จ์ด๋ฅผ ๊ฐ๋ฐํ๊ธฐ ์ํ ๋๊ตฌ๋ค๋ก ์ด๋ค์ง ํจํค์ง๋ผ๊ณ ํ ์ ์๋ค. ํจํค์ง ์ข ๋ฅ Java SE (Standard Edition) Java EE(Enterprise Edition) : Java ..

activity_main.xml : FrameLayout ์ผ๋ก ๋ฐ๊ฟ์ฃผ๊ณ , main fragment ๋ฅผ ์ถ๊ฐํด์ค๋ค. main activity ์์ fragment๋ฅผ ๋์์ค๋ค๊ณ ์๊ฐ. fragment ๋ํ java์ xml ํ ์์ผ๋ก ์์ฑ๋จ activity.java ์ฒ๋ผ ๋น์ท, onCreate() ๊ฐ ์๋ onCreateView() ์ด๊ณ ๋น์ทํ๊ฒ findViewById ๋ก ๊ฐ ์ฐพ์์ ํ ๋นํ์ง๋ง rootView. ๊ฐ ํ์ํ๋ค! ๊ทธ๋ฆฌ๊ณ xml๊ณผ Fragment๋ฅผ ๋ฉ๋ชจ๋ฆฌ ์ฌ๋ฆฌ๋ฉด์ ์ฐ๊ฒฐ ~ ๊ทธ๋์ fragment_main / fragment_menu ๋ผ๊ณ ์จ์ค => ๋ฒํผ ํด๋ฆญ - ํ๋ฉด์ ํ์ ์ฌ๊ธฐ์ ์ง์ ํ๋๊ฒ ์๋๊ณ activity์๊ฒ ์์ activity์ ๋ฉ์๋๋ฅผ ๋ง๋ค์ด ํธ์ถํ์ฌ์ผ ํจ ==> ์ธ์ 1์ ์ฃผ๋ฉด m..

์๋น์ค ํด๋์ค๋ฅผ ๋ง๋ค๋ฉด, ์ผ๋จ Manifest.xml ์ ์์ฑ๋์๋จ ํ์ ์๋น์ค ์์๋ Main -> Service ๋ก ์์คํ ์ ์์ฒญ์ ํด์ผํจ intent ์ฌ์ฉ ์๋น์ค ์์ Button ํด๋ฆญ ํ๋ฉด "mia" ์ ์์์ data "command"๋ฅผ intent๋ฅผ ์ด์ฉํ์ฌ service๋ก ๋๊น **service๋ ํ๋ฒ ์คํ๋๋ฉด ๊ณ์ ์คํ๋๊ธฐ ๋๋ฌธ์ intent๋ก ์ ์ฅ๋ ๊ฐ์ ์ฐ๊ธฐ ์ํด์๋ onStartCommand() ์ด์ฉํด์ ํ์ธ ํด์ผ ํจ! => 1) Main์ผ๋ก๋ถํฐ ์ ๋ฌ๋ฐ์ ๋ฐ์ดํฐ๋ฅผ ํ์ธํ ์ ์๋ค! (console์์) onCreate() ๋จผ์ ํธ์ถ (์๋ช ์ฃผ๊ธฐ) onStartCommand() ํธ์ถ, ๊ทธ ์์์ intent ์ data ํ์ธ 2) Main-> service๋ก data๋ฅผ ์ ๋ฌํ๋ค๋ฉด, ์ด๋ฒ์..

ํ๋ฉด ๋ ์ง๊ธฐ ์ง์ ๊น์ง onCreate() -> onStart() -> onResume() ์คํ! ๋ฒํผํด๋ฆญํ์ฌ finish() ์คํํ์๋ onPause() -> onStop() -> onDestroy() ์คํ ์๋ช ์ฃผ๊ธฐ ์์์ ํ๋ฉด์ด ๊บผ์ง๊ธฐ ์ง์ ์ data๋ฅผ ์ ์ฅํ๊ณ ๋ณต๊ตฌํด ๋ณด์! "SharedPreferences ๋ฅผ ์ด์ฉ" ์ฒ์ ์ผ์ง๋๋ ๋น์ฐํ ์ค๋จ๋ ์ ์ด ์์ด์ " ๋ณต๊ตฌ๋ ์ด๋ฆ=> " ์ด๋ ๊ฒ ๋น๊ฐ์ผ๋ก ํ ์คํธ ๋จผ์ ๋ธ. ํ์ง๋ง, ๋๊ณ ๋ค์ ์ผค ๋๋ " ๋ณต๊ตฌ๋ ์ด๋ฆ=> mia๊ฐ " ์ ์์ ์ผ๋ก ๋ธ

1. ์ธํฐํ์ด์ค Parcelable์ ๊ตฌํํ๋SimpleData.java ํด๋์ค๋ฅผ ์์ฑํ๋ค. 2. ์ค๋ฒ๋ผ์ด๋ฉ ๊ฐ์ํ๋ ๋ฉ์๋๋ค์ ์ ์ํด์ค๋ค. 3. Intent ์์ ๋ฃ์ SimpleData ์์ ์ด๋ค data๋ฅผ ๋ฃ์ด์ค์ง ํ๋์ ์ ์ํ๋ค. int number; String message; Parcel๊ฐ์ฒด์ SimpleData ๊ฐ ์๋ก ์ฝ๊ณ ์ธ ์ ์๋๋ก ํ๋ค. MainActivity์์ Parcelable์ ๊ตฌํํ ํด๋์ค๋ฅผ ์ด์ฉํ์ฌ(SimpleData.java) intent์ ์ ์ฅํ ์ ์๊ฒ ๋์๋ค!~ 4. MainActivity์์ Intent ์ ์ ์ฅํ parcel์ ๋ถ๋ฌ์์ Toast๋ก ๋์ธ ์ ์๋ค!