APP/ANDROID13 [๋ถ์คํธ์ฝ์ค]์๋๋ก์ด๋ ํญ(Tab) ํญ ๋ฒํผ(TAB) ํญ์ sdk๊ฐ ์ ๊ณตํ๋ ์์ ฏ์ ์ฌ์ฉํ ์๋ ์๊ณ , ์ง์ ๋ง๋ค ์๋ ์๋ค. ํญ์ ์นด์นด์คํก, ์ธ์คํ๊ทธ๋จ, ํ์ด์ค๋ถ๊ณผ ๊ฐ์ sns์ ๋ง์ ์ดํ์ ํ๋ฉด ๊ตฌ์ฑ์ ํ๋ฐํ๊ฒ ์ฌ์ฉ๋๊ณ ์๋ค. ํญ์ ๊ตฌ์ฑ๋ฐฉ๋ฒ์ผ๋ก๋ activity๋ฒํผ๊ณผ famelayout(ํ๋ ์ ๋ ์ด์์)์ด๋ผ๋ ์์ ฏ์ ๋ฐฐ์นํ์ฌ ์ ์ฒด์ ์ธ ๋ ์ด์์์ ๊ตฌ์ฑํ์ฌ ๋ฒํผ ์ ํ์, ํด๋น๋๋ fragment๋ฅผ ๋์ฐ๋ ๋ฐฉ์์ผ๋ก ๊ตฌํ๋๋ค. MainActivity.java package com.example.actionbar_ex; import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.widget.ScrollingTabContainerView; import androidx.ap.. 2020. 2. 28. [๋ถ์คํธ์ฝ์ค]์๋๋ก์ด๋ ํ๋๊ทธ๋จผํธ(fragment),์ก์ ๋ฐ ํ๋๊ทธ๋จผํธ(Fragment) ๋์ ์กํฐ๋นํฐ๊ฐ ์ฌ๋ฌ ๊ฐ์ ํ๋ฉด์ ๊ฐ์ง๋๋ก ๋ง๋ค๊ธฐ์ํด ๊ณ ์๋ ๊ฐ๋ ์ด๋ค. ํ๋์ ๋์คํ๋ ์ด์์ ์ฌ๋ฌํ๋ฉด์ ๋์ฐ๊ณ ์ถ์ ๋์ฆ๊ฐ ์์ฑ๋๋ฉด์ ํ๋๊ทธ๋จผํธ๋ฅผ ์ด์ฉํ์ฌ ๊ทธ ๋์ฆ๋ฅผ ํด๊ฒฐ์ํฌ ์ ์๋ค. ํธ๋ํฐ์ ํ๋ฉด๊ณผ ๋ฌ๋ฆฌ ์์ดํจ๋๋ ํ๋ธ๋ฆฟ ๊ฐ์ ๊ธฐ๊ธฐ์์๋ ํ ํ๋ฉด์ ํ๋ฒ์ ๋ณด์ฌ์ฃผ์ด ํธ๋ฆฌํ๊ฒ ๋ง๋ค์๋ค. ์ด์ ๊ด๋ จ๋ ๋ฐฉ๋ฒ์ผ๋ก๋ ํ๋๊ทธ๋จผํธ ๋ง๊ณ ๋ ๋ ์ด์์(layout)๊ณผ ์กํฐ๋นํฐ(activity)๋ฅผ ์ฌ์ฉํ์ฌ ๋ํ๋ผ ์ ์์ง๋ง, ๋ ์ด์์์ ๊ฒฝ์ฐ ์ ์ ์ธ ์์๋ฅผ ์ ์ํ๋ ๋งํผ ์ด๋ฒคํธ๋ ๋ฐ์ดํฐ์ ์ด๋๊ณผ ๊ฐ์ ๋์์ ์ฒ๋ฆฌํ๊ธฐ์ ๋ฌด๋ฆฌ๊ฐ ์๊ณ , ์กํฐ๋นํฐ์ ๊ฒฝ์ฐ ActivityGroup ํด๋์ค๋ฅผ ํ์ฉํด ์กํฐ๋นํฐ๋ฅผ ์ค์ฒฉ ์ํด์ผ๋ก์จ ํ๋ฉด ๋ถํ ์ ๊ตฌํํ์ง๋ง ์ด ๋ํ ์ค์ฒฉ๋ ์กํฐ๋นํฐ๊ฐ์ ์๋ช ์ฃผ๊ธฐ ๊ด๊ณ๋ ์ฌ๋ฌ ๊ตฌ์กฐ์ ์ธ.. 2020. 2. 27. [๋ถ์คํธ์ฝ์ค] ๋ธ๋ก๋์บ์คํธ ์์ ์/์ํ ๊ถํ ๋ธ๋ก๋์บ์คํธ ์์ ์(Broadcast Receiver) ๋ธ๋ก๋์บ์คํธ(Broadcast) : ๋ฐฉ์ก์ ํ๋๊ฒ ์) ์ฑํ ์ฑ์์ ์ผ๋์ผ ์ฑํ ์ ํ ๋ ๋ฉ์์ง๋ ๋ ์ฌ๋๋ผ๋ฆฌ ์ฃผ๊ณ ๋ฐ์ง๋ง ์ฌ๋ฌ ์ฌ๋์๊ฒ ํ๊บผ๋ฒ์ ์ ๋ฌํ๊ณ ์ถ์ ๋๋ ๊ทธ๋ฃน ์ฑํ ๋ฐฉ์ ๋ง๋ค์ด ํ ๋ฒ ์ด ๊ธ์ ์ฌ๋ฌ ์ฌ๋์๊ฒ ์ ๋ฌํ๋ ๊ฒ ๋คํธ์ํฌ๋ถ์ผ์์์ ์ ๋์บ์คํธ/๋ฉํฐ์บ์คํธ/๋ธ๋ก๋์บ์คํธ์ ๊ฐ๋ ์ด ์ ์ฌ ๋ธ๋ก๋์บ์คํ ๋ฉ์์ง๋ ์ธํ ํธ ๊ฐ์ฒด๋ก ๋ง๋ค์ด์ ธ ์ ๋ฌ๋๋ค. ๊ฐ์ข ์ฑ์์ ๋ฐ์ํ๋ ์ด๋ฒคํธ๋ฅผ ์บ์นํ ํ, ๋ฆฌ์๋ฒ๋ก ์ฒ๋ฆฌํ ์ ์๋๋ก ํด์ฃผ๊ณ , "๋ฐฉ์กํ๊ธฐ=>์์ ํ๊ธฐ"์ ์ฌ์ดํด๋ก ๋์๋๋ค. ์ ์ ๋ฆฌ์๋ฒ ํ ๋ฒ ๋ฑ๋ก๋๋ฉด ํด์ X ์ฑ ์ค์น์, ์๋ ๋ฑ๋ก ๋์ ๋ฆฌ์๋ฒ ๋ฑ๋ก, ํด์ง์ ์์ manifest์ ๋ฑ๋กํ์ง ์๊ณ , ์์ค์ ๋ฑ๋ก์ ํ๋ค ์ํ ๊ถํ ๋ง์๋ฉ๋ก ๋ฒ์ ๋ถํฐ๋ ๊ถํ์.. 2020. 2. 21. [๋ถ์คํธ์ฝ์ค] ์ธํ ํธ(intent)๋ฅผ ์ด์ฉํ ํ๋ฉด์ ํ ์ ํ๋ฆฌ์ผ์ด์ ๊ตฌ์ฑ์์ 4๊ฐ์ง ์กํฐ๋นํฐ(Activity) ์๋น์ค ๋ธ๋ก๋์บ์คํธ ์์ ์ ๋ด์ฉ ์ ๊ณต์ ์กํฐ๋นํฐ(Activity) ์กํฐ๋นํฐ๋ ํ๋ฉด์ ํ์๋๋ UI๊ตฌ์ฑ์ ์ํด ๊ฐ์ฅ ๊ธฐ๋ณธ์ด ๋๋ ์์์ด๋ค. ํ๋ฉด์ UI๋ฅผ ํ์ํ๊ธฐ ์ํด ์ต์ ํ๋์ activity๋ฅผ ๊ฐ์ ธ์ผ ํ๋ค. ์กํฐ๋นํฐ๋ ์ฌ์ฉ์์์ ์ธํฐํ์ด์ค๋ฅผ ๋ง๋ค์ง๋ง ์์ฒด์ถ๋ ฅ๊ธฐ๋ฅ์ด ์๋ค. ์ฌ์ฉ์์๊ฒ ์ค์ ๋ก ๋ณด์ฌ์ง๋ ๋ถ๋ถ์ ๋ทฐ(view), ๋ทฐ๊ทธ๋ฃน(viewgroup)์ ํด๋นํ๋ค. ๊ทธ๋ฆฌ๊ณ , ์กํฐ๋นํฐ๊ฐ ์์ฑ๋ ๋๋ง๋ค ํธ์ถ๋๋ setContentView๋ฉ์๋๋ ์กํฐ๋นํฐ ์์ ๋ทฐ๋ฅผ ๋ฐฐ์นํ๋ ๋ช ๋ น์ด๋ค. ์๋ก์ด ์กํฐ๋นํฐ ์ถ๊ฐ app์ฐํด๋ฆญ -> new -> activity onCreate() : ์กํฐ๋นํฐ๋ฅผ ์์ฑ, ์กํฐ๋นํฐ์ ํ์ ๊ตฌ์ฑ ์์๋ฅผ ์ด๊ธฐํ, setContentView().. 2020. 2. 18. [๋ถ์คํธ์ฝ์ค]์คํฌ๋กค๋ทฐ ํ ์ด๋ธ ๋ ์ด์์ ๊ฒฉ์ ๋ชจ์์ผ๋ก ๋ทฐ๋ฅผ ๋ฐฐ์นํ ๋ ์ฌ์ฉ **๋ฆฌ๋์ด ๋ ์ด์์ ์์ ๋ฆฌ๋์ด ๋ ์ด์์์ ๋ฃ๋ ๋ฐฉ์์ ์ฌ์ฉํด๋ ๋์ง๋ง ํ ์ด๋ธ ๋ ์ด์์์ ์ฌ์ฉํ๋ฉด ์ข ๋ ๊ฐ๋จํ ์ด์ ? => ํ ์ด๋ธ๋ ์ด์์์ด ์ข๋ ํ ์ด๋ธ์ ๊ด๋ จ๋ ์์ฑ๋ค์ด ์กด์ฌํ๋ฏ๋ก ๋์ฑ ํธ๋ฆฌ, ๋น์ทํ๋ ํ ํํ์ ๊ณ ์ ๋ ๋ชจ์์ด๋ผ๋ฉด ํ ์ด๋ธ ๋ ์ด์์์ด ๋ ์ฐ๊ธฐ ๊ฐํธํ๊ณ , ๊ฐ ํ์ด๋ ์ด์ด ์ ๋์ ์ธ ๊ฒฝ์ฐ๋ ๋ฆฌ๋์ด ๋ ์ด์์์ด ๋ ์ ํฉํ๋ค. ์คํฌ๋กค ๋ทฐ(scrollview) ์์ง(์์๋)๋ก ์คํฌ๋กคํ๋ ๊ธฐ๋ฅ ๊ธ์ ์๊ฐ ํ๋ฉด์ ์ด๊ณผํ์ฌ ์คํฌ๋กค ํ ์ ์๊ฒ ํด์ฃผ๋ ์ปจํ ์ด๋ ์ฃผ์) ์คํฌ๋กค ๋ทฐ์๋ ๋จ ํ๋์ ์์ ฏ๋ง ๋ฃ์ ์ ์๋ค - ์ํ ๋ฐฉํฅ์ ์คํฌ๋กค๋ทฐ๋ฅผ ์ฌ์ฉํ๊ณ ์ ํ ๋๋ HorizontalScrollView์ฌ์ฉ ์คํฌ๋กค๋ทฐ ๋ง๋ค๊ธฐ 2020. 2. 13. [๋ถ์คํธ์ฝ์ค]๋ ์ด์์ ๋ง๋ค๊ธฐ ์ค๋์ ๋ถ์คํธ์ฝ์ค์ ์๋๋ก์ด๋ ๊ฐ์์ ์ฒซ๋ฒ์งธ ๋ถ๋ถ์ธ ๋ ์ด์์๋ง๋ค๊ธฐ๋ฅผ ๊ณต๋ถํด๋ณด์๋ค. ๋ ์ด์์์ ๋ํด์๋ ์์ ๊ธ์ ์ฐธ๊ณ ํ๋ฉด ์ดํดํ๊ธฐ ์์ํ ๊ฒ ๊ฐ๋ค! (์ ๊ธ ๋งํฌ ์ฐธ๊ณ : https://minjoo-space.tistory.com/2) ์ด ๊ฐ์์์ ๋ฐฐ์ฐ๋ ๋ ์ด์์๋ค์ ์ข ๋ฅ์ด๋ค. ์ ์ฝ ๋ ์ด์์(Constraint Layout) ์๋๋ก์ด๋ ์คํ๋์ค์์ ์๋ก์ด ํ๋ก์ ํธ๋ฅผ ๋ง๋ค๋ฉด ๋จผ์ ๋์ค๋ ๋ํดํธ ๋ ์ด์์ ํ๋ก์ ํธ ์์ฑ ์, ์๋์ผ๋ก ๋ง๋ค์ด์ง XML ๋ ์ด์์ ํ์ผ์ธ activity_main.xml ํ์ผ์ ์ด์ด๋ณด๋ฉด ๋ฐ๊นฅ์ ์๋ ์ต์์ ํ๊ทธ๊ฐ ConstraintLayout์ธ๊ฑธ ํ์ธํ ์ ์๋ค. activity_main.xml์์ Design๋ถ๋ถ์์ button์ ๋ง๋ค์ด์ ๋ฒํผ์ ์ ๋ค์ ๊ธฐ์ค์ด ๋์ด ์ ์ฝ์ ๊ฑธ ๋ถ๋ชจ .. 2020. 2. 5. ์ด์ 1 2 3 ๋ค์ ๋ฐ์ํ