Package com.example.breeze_seas
Class UiImageBinder
java.lang.Object
com.example.breeze_seas.UiImageBinder
Small image-binding helper for list rows that need Firestore-backed posters or profile photos.
This keeps image loading logic in one place, adds lightweight in-memory caching, and guards against recycled views receiving stale async image callbacks.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interfaceRenders the placeholder state for one image slot before any async data arrives. -
Method Summary
Modifier and TypeMethodDescriptionstatic voidbindEventPoster(android.widget.ImageView imageView, String eventId, UiImageBinder.PlaceholderRenderer placeholderRenderer) Binds one event poster into the supplied image view using the event id as the lookup key.static voidbindImageDoc(android.widget.ImageView imageView, String imageDocId, UiImageBinder.PlaceholderRenderer placeholderRenderer) Binds one already-known image document id into the supplied image view.static voidbindUserAvatar(android.widget.ImageView imageView, User user, UiImageBinder.PlaceholderRenderer placeholderRenderer) Binds one user's avatar image into the supplied image view.
-
Method Details
-
bindEventPoster
public static void bindEventPoster(@NonNull android.widget.ImageView imageView, @Nullable String eventId, @NonNull UiImageBinder.PlaceholderRenderer placeholderRenderer) Binds one event poster into the supplied image view using the event id as the lookup key.- Parameters:
imageView- Image view that should show the event poster.eventId- Firestore event document id.placeholderRenderer- Renderer applied immediately and again when no poster exists.
-
bindImageDoc
public static void bindImageDoc(@NonNull android.widget.ImageView imageView, @Nullable String imageDocId, @NonNull UiImageBinder.PlaceholderRenderer placeholderRenderer) Binds one already-known image document id into the supplied image view.- Parameters:
imageView- Image view that should show the image.imageDocId- Firestore image document id.placeholderRenderer- Renderer applied immediately and again when no image exists.
-
bindUserAvatar
public static void bindUserAvatar(@NonNull android.widget.ImageView imageView, @Nullable User user, @NonNull UiImageBinder.PlaceholderRenderer placeholderRenderer) Binds one user's avatar image into the supplied image view.- Parameters:
imageView- Image view that should show the avatar.user- User whose avatar should be displayed.placeholderRenderer- Renderer applied immediately and again when no avatar exists.
-