Class VideoQualitySelectionDialogFragment

All Implemented Interfaces:
ComponentCallbacks, ComponentCallbacks2, DialogInterface.OnCancelListener, DialogInterface.OnClickListener, DialogInterface.OnDismissListener, View.OnCreateContextMenuListener

public class VideoQualitySelectionDialogFragment extends AbstractSelectionDialog<VideoTrackQuality>
This is a utility class that allows you to create a DialogFragment that can be used to switch video qualities. See the various newInstance methods on how to customize the dialog.

Note that the hosting activity that starts the dialog should implement the PlayerViewProvider interface as the dialog needs to be able to access the underlying IPlayerView to retrieve its data and apply the selection even when the system disposes and recreates the dialog.

Since:
3.0.0
  • Constructor Details

    • VideoQualitySelectionDialogFragment

      public VideoQualitySelectionDialogFragment()
  • Method Details

    • newInstance

      public static VideoQualitySelectionDialogFragment newInstance(IPlayerView playerView, String title)
      Creates a new dialog fragment that shows the available tracks and allows selecting the new track.

      By default, this dialog will allow to disable the manual selection and turn on adaptive bitrate switching.

      The default string representation of the track is its label (see VideoTrackQuality.getLabel()).

      Parameters:
      playerView - The player view
      title - The dialog title
      Returns:
      The dialog fragment
    • newInstance

      public static VideoQualitySelectionDialogFragment newInstance(IPlayerView playerView, String title, boolean allowDisable)
      Creates a new dialog fragment that shows the available tracks and allows selecting the new track.

      The default string representation of the track is its label (see VideoTrackQuality.getLabel()).

      Parameters:
      playerView - The player view
      title - The dialog title
      allowDisable - If true, the dialog will allow to switch to automatic bitrate switching and disable the manual selection. The default label for the "disable" item will be "Auto". You can use a custom converter to specify a different label.
      Returns:
      The dialog fragment
    • newInstance

      public static VideoQualitySelectionDialogFragment newInstance(IPlayerView playerView, String title, boolean allowDisable, Converter<VideoTrackQuality,String> converter)
      Creates a new dialog fragment that shows the available tracks and allows selecting the new track.

      The default string representation of the track is its label (see VideoTrackQuality.getLabel()).

      Parameters:
      playerView - The playerView
      title - The dialog title
      allowDisable - If true, the dialog will allow to switch to automatic bitrate switching and disable the manual selection.
      converter - The converter that is used to translate VideoTrackQuality instanced to Strings that are used as labels in the dialog. Note that the converter should translate null to the string representation of the "disable" item if allowDisable is set to true.
      Returns:
      The dialog fragment