Class AppWidgetTarget

java.lang.Object
com.bumptech.glide.request.target.CustomTarget<Bitmap>
com.bumptech.glide.request.target.AppWidgetTarget
All Implemented Interfaces:
LifecycleListener, Target<Bitmap>

public class AppWidgetTarget extends CustomTarget<Bitmap>
This class is used in order to display downloaded Bitmap inside an ImageView of an AppWidget through RemoteViews.

Note - For cancellation to work correctly, you must pass in the same instance of this class for every subsequent load.

  • Constructor Details

    • AppWidgetTarget

      public AppWidgetTarget(Context context, int width, int height, int viewId, RemoteViews remoteViews, int... widgetIds)
      Constructor using an int array of widgetIds to get a handle on the Widget in order to update it.
      Parameters:
      context - Context to use in the AppWidgetManager initialization.
      width - Desired width in pixels of the bitmap that will be loaded. (Needs to be manually put because of RemoteViews limitations.)
      height - Desired height in pixels of the bitmap that will be loaded. (Needs to be manually put because of RemoteViews limitations.)
      viewId - The id of the ImageView view that will load the image.
      remoteViews - RemoteViews object which contains the ImageView that will load the bitmap.
      widgetIds - The int[] that contains the widget ids of an application.
    • AppWidgetTarget

      public AppWidgetTarget(Context context, int viewId, RemoteViews remoteViews, int... widgetIds)
      Constructor using an int array of widgetIds to get a handle on the Widget in order to update it that uses Target.SIZE_ORIGINAL as the target width and height.
      Parameters:
      context - Context to use in the AppWidgetManager initialization.
      viewId - The id of the ImageView view that will load the image.
      remoteViews - RemoteViews object which contains the ImageView that will load the bitmap.
      widgetIds - The int[] that contains the widget ids of an application.
    • AppWidgetTarget

      public AppWidgetTarget(Context context, int width, int height, int viewId, RemoteViews remoteViews, ComponentName componentName)
      Constructor using a ComponentName to get a handle on the Widget in order to update it.
      Parameters:
      context - Context to use in the AppWidgetManager initialization.
      width - Desired width in pixels of the bitmap that will be loaded. (Needs to be manually put because of RemoteViews limitations.)
      height - Desired height in pixels of the bitmap that will be loaded. (Needs to be manually put because of RemoteViews limitations.)
      viewId - The id of the ImageView view that will load the image.
      remoteViews - RemoteViews object which contains the ImageView that will load the bitmap.
      componentName - The ComponentName that refers to our AppWidget.
    • AppWidgetTarget

      public AppWidgetTarget(Context context, int viewId, RemoteViews remoteViews, ComponentName componentName)
      Constructor using a ComponentName, when override has been put to get a handle on the Widget in order to update it that uses Target.SIZE_ORIGINAL as the target width and height.
      Parameters:
      context - Context to use in the AppWidgetManager initialization.
      viewId - The id of the ImageView view that will load the image.
      remoteViews - RemoteViews object which contains the ImageView that will load the bitmap.
      componentName - The ComponentName that refers to our AppWidget.
  • Method Details

    • onResourceReady

      public void onResourceReady(@NonNull Bitmap resource, @Nullable Transition<? super Bitmap> transition)
      Description copied from interface: Target
      The method that will be called when the resource load has finished.

      This may be called multiple times both within a single load and also across different loads if the Target object is re-used.

      Within a single load this may be called multiple times for reasons that include:

      • The load uses one or more thumbnails. Each time a thumbnail load completes successfully and no higher priority load has finished, this method will be called with the thumbnail resource. See RequestBuilder.thumbnail(com.bumptech.glide.RequestBuilder).
      • The load is paused and restarted. This can happen automatically in response to connectivity changes or the Activity / Fragment lifecycle. It can also happen if RequestManager.pauseRequests() is called manually.
      Parameters:
      resource - the loaded resource.
    • onLoadCleared

      public void onLoadCleared(@Nullable Drawable placeholder)
      Description copied from interface: Target
      A mandatory lifecycle callback that is called when a load is cancelled and its resources are freed.

      You must ensure that any current Drawable received in Target.onResourceReady(Object, Transition) is no longer used before redrawing the container (usually a View) or changing its visibility.

      Parameters:
      placeholder - The placeholder drawable to optionally show, or null.