๐ฒ ์ค๋์ ๊ฐ๋ฐ ์ผ์ง
- ์ค๋๋ ์๋ฒ์ ํต์ ํ๋ ๊ณผ์ ์์ ์๋ฌ๊ฐ ๋ง์ด ๋ฌ๋ค.
- ์ ๋ฒ๊ณผ ๊ฐ์ด ์๋ฒ์์ ๋ฐ์์ค๋ ๊ฐ์ฒด์ ๋ณ์๋ช ๊ณผ ๋ด๊ฐ ์ค์ ํ Response ๋ณ์๋ช ์ด ๋ฌ๋ผ์ ์๋ฌ๊ฐ ๋ฌ๋ค.
- ์ด๋ฒ์ ํต์ ํ๋ฉด์ ๊ตณ์ด ์๋ฒ์์ ์ฃผ๋ ๊ฐ์ฒด์ Response๊ฐ ๊ฐ์ ํ์๊ฐ ์๋ค๋ ๊ฒ์ ์๊ฒ ๋์๋ค.
1 2 3 4
{ "name": "Bae", "age": 20 }
์ด๋ฐ ์์ผ๋ก ์๋ฒ์์ ๊ฐ์ฒด๋ฅผ ๋ณด๋ด๋ฉด ๋ด๊ฐ ๋ง๋ Response ํด๋์ค์ id์ name๋ง ์์ผ๋ฉด ๋๋จธ์ง๋ ์ด๊ธฐ๊ฐ ์ค์ ๋ง ํ๋ฉด ํต์ ์ด ๋๋ค.
1 2 3 4 5 6
data class UserResponse( val id: Int = 0, val name: String? = "", val age: Int? = 0, val job: String? = "" )
์ด๋ฌ๋ฉด name๊ณผ age๋ โBaeโ์ 20์ผ๋ก ์ฑ์์ง๊ณ ๋๋จธ์ง ๊ฐ๋ค์ ์ด๊ธฐ๊ฐ์ผ๋ก ์ฑ์์ง๋ค.
- ๊ทธ๋์ ๋ฐ์์ฌ ์ ์๋ ๊ฐ๋ค์ ํ๋์ Response ๊ฐ์ฒด์ ๋ค ๋ฃ๊ณ Mapper ํจ์๋ฅผ ๋ง๋ค์ด ๋ด๊ฐ ์ํ๋ ๊ฐ๋ค๋ง ๋ฝ์์ค๋๋ก ์ฝ๋๋ฅผ ์งฐ๋ค.
1 2 3 4 5
fun mapperToUser(userResponse: UserResponse) = User( name = userResponse.name, age = userResponse.age )
- ์ด๋ฒ ํ๋ก์ ํธ์์ ์ ์ ๋ค์ ๋ฐ์ดํฐ๋ก ํต๊ณ๋ฅผ ๋ด์ด ๊ทธ๋ํ๋ก ๋ณด์ฌ์ฃผ๋ ๊ธฐ๋ฅ์ ์ถ๊ฐํ๋ ค๊ณ ํ๋ค.
- ๊ทธ๋ํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์๋ ๋ํ์ ์ผ๋ก MpAndroidChart๊ฐ ์๋๋ฐ ์ด๊ฑฐ๋ ๋์์ธ์ด ๋๋ฌด ๋จ์ํด์ AnyChart๋ผ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ๋ ค๊ณ ํ๋ค.
- ๊ทธ๋ฐ๋ฐ github์ ๋์์๋ ์์ ๋ฅผ ๊ทธ๋๋ก ๋ค์ด๋ก๋ํ์ฌ ์คํํ๋๋ฐ ๊ทธ๋ํ๊ฐ ํ๋ฉด์ ์ ๋ฌ๋ค..
- ์กํฐ๋นํฐ๋ ํ๋๊ทธ๋จผํธ์์ ๋ทฐ๋ชจ๋ธ ๊ฐ์ฒด๋ฅผ ์ ์ธํ์ฌ ์ฌ์ฉํ ๋ ๊ทธ๋ฅ ๋ณ์๋ช
์ผ๋ก ์ฌ์ฉํ์ง ๋ง๊ณ
this@MainFragment
๋ฅผ ๋ถ์ฌ์ ์ฌ์ฉํ์.this@MainFragment.viewModel
์ด๋ ๊ฒ.- ์ด๋ ๊ฒ ์ฌ์ฉํ์ง ์์ผ๋ฉด ๊ฐ๋ ์ธ์์ ๋ชปํด์ ์๋ฌ๊ฐ ๋ฐ์ํ๋๋ฐ ์ ๊ทธ๋ฐ์ง๋ ์์ง ๋ชจ๋ฅด๊ฒ ๋ค.