Skip to content
This repository was archived by the owner on Feb 17, 2020. It is now read-only.

Commit 5ef66f9

Browse files
committed
Add placeholder and error image for speaker results
1 parent ab4d41c commit 5ef66f9

4 files changed

Lines changed: 17 additions & 1 deletion

File tree

app/src/main/java/net/squanchy/imageloader/GlideImageLoader.kt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,10 @@ private class GlideImageRequest(private val request: RequestBuilder<Drawable>) :
3232
request.apply(RequestOptions.errorOf(errorImageResId))
3333
}
3434

35+
override fun placeholder(@DrawableRes placeholderImageResId: Int) = apply {
36+
request.apply(RequestOptions.placeholderOf(placeholderImageResId))
37+
}
38+
3539
override fun into(target: ImageView) {
3640
request.into(target)
3741
}

app/src/main/java/net/squanchy/imageloader/ImageLoader.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,5 +15,7 @@ interface ImageRequest {
1515

1616
fun error(@DrawableRes errorImageResId: Int): ImageRequest
1717

18+
fun placeholder(@DrawableRes placeholderImageResId: Int): ImageRequest
19+
1820
fun into(target: ImageView)
1921
}

app/src/main/java/net/squanchy/search/SearchItemView.kt

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,10 @@ class SearchItemView @JvmOverloads constructor(
3838

3939
val avatarImageURL = speaker.photoUrl
4040
if (avatarImageURL.isDefined()) {
41-
imageLoader.load(avatarImageURL.getOrThrow()).into(speakerPhoto)
41+
imageLoader.load(avatarImageURL.getOrThrow())
42+
.placeholder(R.drawable.ic_avatar_placeholder)
43+
.error(R.drawable.ic_no_avatar)
44+
.into(speakerPhoto)
4245
} else {
4346
speakerPhoto.setImageResource(R.drawable.ic_no_avatar)
4447
}
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<shape xmlns:android="http://schemas.android.com/apk/res/android"
3+
android:shape="rectangle">
4+
5+
<solid android:color="#c9c9c9" />
6+
7+
</shape>

0 commit comments

Comments
 (0)