Skip to content

Commit 3d375e5

Browse files
committed
✨ 데이터스토어 저장된 uri 가져와서 Glide로 화면에 표시하기
1 parent f05c940 commit 3d375e5

File tree

5 files changed

+22
-1
lines changed

5 files changed

+22
-1
lines changed

build.gradle

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ buildscript {
2626
shimmerVersion = "0.5.0"
2727
desugarVersion = "2.0.0"
2828
calendarVersion = "1.0.4"
29+
glideVersion = "4.14.2"
2930
}
3031
dependencies {
3132
classpath "com.google.gms:google-services:$googleServiceVersion"

presentation/build.gradle

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,4 +80,8 @@ dependencies {
8080

8181
// Calendar Library
8282
implementation "com.github.kizitonwose:CalendarView:$calendarVersion"
83+
84+
// Glide
85+
implementation "com.github.bumptech.glide:glide:$glideVersion"
86+
annotationProcessor "com.github.bumptech.glide:compiler:$glideVersion"
8387
}

presentation/src/main/java/com/whyranoid/presentation/myrun/MyRunFragment.kt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ import androidx.fragment.app.viewModels
66
import com.whyranoid.presentation.R
77
import com.whyranoid.presentation.base.BaseFragment
88
import com.whyranoid.presentation.databinding.FragmentMyRunBinding
9+
import com.whyranoid.presentation.util.loadImage
910
import dagger.hilt.android.AndroidEntryPoint
1011

1112
@AndroidEntryPoint
@@ -29,5 +30,9 @@ internal class MyRunFragment : BaseFragment<FragmentMyRunBinding>(R.layout.fragm
2930
viewModel.nickName.observe(viewLifecycleOwner) {
3031
binding.tvNickName.text = it
3132
}
33+
34+
viewModel.profileImgUri.observe(viewLifecycleOwner) {
35+
binding.ivProfileImage.loadImage(it)
36+
}
3237
}
3338
}

presentation/src/main/java/com/whyranoid/presentation/util/BindingAdapters.kt

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,10 @@
11
package com.whyranoid.presentation.util
22

33
import android.view.View
4+
import android.widget.ImageView
45
import androidx.databinding.BindingAdapter
6+
import com.bumptech.glide.Glide
7+
import com.whyranoid.presentation.R
58
import com.whyranoid.presentation.util.networkconnection.NetworkState
69

710
@BindingAdapter("networkConnectionVisibility")
@@ -21,3 +24,12 @@ fun View.enableWithNetworkState(networkState: NetworkState) {
2124
is NetworkState.DisConnection -> true
2225
}
2326
}
27+
28+
@BindingAdapter("loadImage")
29+
fun ImageView.loadImage(uri: String) {
30+
Glide.with(this.context)
31+
.load(uri)
32+
.error(R.drawable.thumbnail_src_small)
33+
.circleCrop()
34+
.into(this)
35+
}

presentation/src/main/res/layout/fragment_my_run.xml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,6 @@
5656
android:layout_marginStart="16dp"
5757
android:layout_marginTop="20dp"
5858
android:contentDescription="@string/my_run_profile_image_description"
59-
android:src="@drawable/thumbnail_src_small"
6059
app:layout_constraintStart_toStartOf="parent"
6160
app:layout_constraintTop_toTopOf="parent" />
6261

0 commit comments

Comments
 (0)