๋ผ์ด๋ธ๋ฌ๋ฆฌ | ๋ชฉ์ |
---|---|
Retrofit2 | ์๋ฒ ํต์ |
Gson | ์๋ฒ์์ ๋ฐ์์จ Json ๊ฐ์ฒด๋ฅผ Gson์ผ๋ก ๋ณํ |
Glide | url์ ์ด์ฉํ ์ด๋ฏธ์ง ๋ทฐ์ ์ด๋ฏธ์ง ์ฒ๋ฆฌ |
DotIndicator | ๋ทฐํ์ด์ ์ธ๋์ผ์ดํฐ |
Cropper | ํ๋กํ ์ด๋ฏธ์ง ํฌ๊ธฐ ์กฐ์ ์ ์ํ Crop ๊ธฐ๋ฅ |
MaterialSearchBar | ๊ฒ์์ฐฝ ๊ตฌํ |
TedPermission | ๊ฐค๋ฌ๋ฆฌ ์ด์ฉ ์ ๊ถํ ์ค์ |
TedKeyboardObserver | ํค๋ณด๋ show/hide ๋ฆฌ์ค๋ |
RecyclerView_+ SearchView | ์ต๊ทผ ๊ฒ์์ด ๊ฒ์์ฐฝ |
Sticky ScrollView | ๋ฉ์ธ ๋ทฐ ํค๋ Sticky ์คํฌ๋กค ๊ตฌํ |
EasySharedPreference | SharedPreference๋ฅผ ๋ ์ฝ๊ฒ ์ฌ์ฉํ๊ธฐ ์ํด ์ฌ์ฉ |
ViewModelProviders, ViewModel | ํ๋๊ทธ๋จผํธ ๊ฐ ๋ฐ์ดํฐ ์ ๋ฌ์ ํ์ํ ViewModel์ ์ฌ์ฉํ๊ธฐ ์ํ ์ค์ |
CircleImageView | ์ฌ์ง์ ์ํ์ผ๋ก ์ฝ์ ํ๊ธฐ ์ํด ์ฌ์ฉ |
RatingBarCustom | ๊ธฐ๋กํ๊ธฐ ๋ทฐ์์ ๋ ์ดํ ๋ฐ ์ปค์คํ ์ ์ํด ์ฌ์ฉ |
-
activity_login.xml : Guideline, chain (packed) ์ฌ์ฉ
-
activity_sign_up.xml : ํ๋จ ๋ฒํผ์ chain(packed) ์ฌ์ฉ
-
activity_sign_up_finish.xml : ๋ ์ด์์ ์ฌ์ฉ
-
fragment_email_check.xml : Guideline ์ฌ์ฉ
-
fragment_id.xml : Guideline ์ฌ์ฉ
-
fragment_password.xml : Guideline ์ฌ์ฉ
-
item_searchmain_similar.xml : chain(spread) ์ฌ์ฉ (*ํ๋จ ์ด๋ฏธ์ง์ LinearLayout ์ฌ์ฉ)
-
๊ทธ ์ธ ๋น์ฌ์ฉ์ฒ๋ฅผ ์ ์ธํ ๋ชจ๋ ๊ณณ์์ ์ฌ์ฉ
-
activity_home.xml : CoordinatorLayout, RelativeLayout ์ฌ์ฉ
- ์ด์ : BottomAppBar ๊ตฌํ์ ์ํ ๋ ์ด์์ ์ฑํ
-
activity_product_review.xml : CoordinatorLayout, RelativeLayout ์ฌ์ฉ
- ์ด์ : CollapsingToolBarLayout์ ์ฌ์ฉํ๊ธฐ ์ํด ์ฑํ
-
activity_record.xml : CoordinatorLayout ์ฌ์ฉ
- ์ด์ : CollapsingToolBarLayout์ ์ฌ์ฉํ๊ธฐ ์ํด ์ฑํ
-
fragment_search.xml : LinearLayout ์ฌ์ฉ
- ์ด์ : ํ ์คํธ, ๋ฆฌ์์ค ์ํ, ์์ง ๊ฐ๊ฒฉ ํจ์จ์ ์ธ ์ค์ ์ ์ํจ
-
item_product_review_review.xml : LinearLayout ์ฌ์ฉ
- ์ด์ : ํ ์คํธ, ๋ฆฌ์์ค ์ํ, ์์ง ๊ฐ๊ฒฉ ํจ์จ์ ์ธ ์ค์ ์ ์ํจ
-
item_product_review_review.xml : LinearLayout ์ฌ์ฉ
- ์ด์ : ํ ์คํธ, ๋ฆฌ์์ค ์ํ, ์์ง ๊ฐ๊ฒฉ ํจ์จ์ ์ธ ์ค์ ์ ์ํจ
-
main_review_list_item.xml : LinearLayout ์ฌ์ฉ
- ์ด์ : ํ ์คํธ, ๋ฆฌ์์ค ์ํ, ์์ง ๊ฐ๊ฒฉ ํจ์จ์ ์ธ ์ค์ ์ ์ํจ
-
item_searchmain_similar.xml : ํ๋จ ์ด๋ฏธ์ง์ LinearLayout ์ฌ์ฉ
- ์ด์ : ๋ฆฌ์์ค ์ํ ๊ฐ๊ฒฉ ํจ์จ์ ์ธ ์ค์ ์ ์ํจ)
- ํค๋ณด๋ ์ก์ ๊ณผ EditText ์ปค์คํ
- Fragment์ ViewPager ์ฝ์
- ViewPager์ ํ๋ฉด์ ํํจ๊ณผ ์ฝ์
- StickyLayout์ ์ด์ฉํ ํค๋์ ๋ทฐ ๋ถ์ด๊ธฐ
- ๋ทฐ ์๋ก๊ณ ์นจ ํ๊ธฐ
- SearchView ํฌ์ปค์ค ์ ํ๋จ ์ฐฝ ๋ณ๊ฒฝ
- ์๋จ ์คํฌ๋กค ์ ํด๋ฐ ๋ณ๊ฒฝ
- ๊ฒ์์ฐฝ์์ ๊ฒ์ ์ ํ๋จ ์ฐฝ์ ๊ฒฐ๊ณผ ๋ณด์ฌ์ฃผ๊ธฐ
- ํ๋๊ทธ๋จผํธ์ ๋ทฐํ์ด์ ๋ฌ๊ธฐ
- ์น ํ์ด์ง ์ฐฝ์ ์ฑ์์ ๋์์ฃผ๊ธฐ
- ํ๋กํ ์ด๋ฏธ์ง ์๋ฒ์ ์ ๋ก๋
- ๊ธฐ๋กํ๊ธฐ ํ๋ฉด ๊ตฌํ
- clear() : ๋ฆฌ์คํธ์ ์์ ์ ๋ถ ์ญ์
HomeFragment.kt, OtherActivity.kt -> ๋ฆฌ๋ทฐ ํํฐ ์ ์ฉ ํ ๋ฆฌ์ฌ์ดํด๋ฌ ์์ดํ ์ด๊ธฐํ ์ ์ฌ์ฉ
์ ๋ ฌ๊ธฐ์ค์ด ๋ณ๊ฒฝ ์ ์๋ก์ด ์ ๋ ฌ ๋ฐ์ดํฐ๋ฅผ ๋ฐ๊ธฐ ์ํด ์ฌ์ฉ
- addall() : ๋ฆฌ์คํธ์ ๋ชจ๋ ์์๋ฅผ ์ ๋ถ arrayList์ ์ ์ฅ
HomeFragment.kt, OtherActivity.kt-> ๋ฆฌ์ฌ์ดํด๋ฌ๋ทฐ ์ตํ๋จ ๋์ฐฉ ์ ์ถ๊ฐ์ ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ๋ณด์ฌ์ฃผ๊ธฐ ์ํด ์ฌ์ฉ
-
split(String) : ๊ตฌ๋ถ์๋ฅผ ๊ธฐ์ค์ผ๋ก ๋ฌธ์์ด๋ค์
List<String>
์ผ๋ก ํ์ฑ -
map(List) : ๋ฆฌ์คํธ ๊ฐ๊ฐ์ ์์์ map์์ ์๋ ํจ์๋ฅผ ์คํํ์ฌ ๊ทธ ์์๋ค๋ก ๋ค์ List๋ฅผ ์์ฑ
-
trim(String): ๋ฌธ์์ด ์ ๋ค์ ์๋ ๊ณต๋ฐฑ ์ ๊ฑฐ
ItemSearchActivity.kt
-
๋ก๊ทธ ์ถ๋ ฅ์ ์ํ ํ์ฅ ํจ์
fun String.showLog(message: String?) { if (message != null) { Log.d(this, message) } else{ Log.d(this,"null") } }
๋ค์๊ณผ ๊ฐ์ด ์ฌ์ฉ (HomeFragment.kt showBottomSheet()ํจ์์์ ์ฌ์ฉ)
ํ์ | ์ญํ | ๊ฐ์ธ ๋ชฉํ |
๊ฐ๋ฏผ๊ตฌ |
์๋๋ก์ด๋ ๊ฐ๋ฐ | ์ญ๋์ ์ธ ์ฑ + ํ๋ ์ด ์คํ ์ด ์ถ์! |
์ดํ์ฐ |
์๋๋ก์ด๋ ๊ฐ๋ฐ | ์ค์ ๋ก ์ฌ์ฉํด๋ ์๋น์๋ค์ด ๋ง์กฑํ๋ ์ดํ๋ฆฌ์ผ์ด์ ์ ์ถ์, ์ข์ ์ฌ๋๋ค๊ณผ ์ฑ์ผ ์ ์น๋ค๋๊ฐ์ ํ์์น๊ตฌ ๋จน๊ธฐ |
๋ฐ์ฃผ์ |
์๋๋ก์ด๋ ๊ฐ๋ฐ | Ounce ๊ฐ๋ฐ ๋งก์ ์ญํ ์ด์ฌํ ํ๊ธฐ, ์๋๋ก์ด๋ ๊ฐ๋ฐ ๊ณผ์ ๊ธฐ๋กํ๊ธฐ |