Package com.castlabs.sdk.playerui.dialogs

## Class ScalingModeSelectionDialogFragment

- java.lang.Object
- - android.app.Fragment
  - - android.app.DialogFragment
    - - com.castlabs.sdk.playerui.dialogs.AbstractSelectionDialog<Integer>
      - - com.castlabs.sdk.playerui.dialogs.ScalingModeSelectionDialogFragment

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

      public class ScalingModeSelectionDialogFragment
      extends AbstractSelectionDialog<Integer>

  This is a utility class that allows you to create a DialogFragment that can be used to switch scaling modes (see `PlayerView.setScalingMode(int)`). 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

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class | Description
    --- | --- | ---
    `static class` | `ScalingModeSelectionDialogFragment.ScalingModeConverter` |

    - ### Nested classes/interfaces inherited from class android.app.Fragment

      `Fragment.InstantiationException, Fragment.SavedState`

  - ### Field Summary

    - ### Fields inherited from class com.castlabs.sdk.playerui.dialogs.AbstractSelectionDialog

      `ARG_ALLOW_DISABLE, ARG_ITEMS, ARG_SELECTED, ARG_TITLE`

    - ### Fields inherited from class android.app.DialogFragment

      `STYLE_NO_FRAME, STYLE_NO_INPUT, STYLE_NO_TITLE, STYLE_NORMAL`

    - ### Fields inherited from interface android.content.ComponentCallbacks2

      `TRIM_MEMORY_BACKGROUND, TRIM_MEMORY_COMPLETE, TRIM_MEMORY_MODERATE, TRIM_MEMORY_RUNNING_CRITICAL, TRIM_MEMORY_RUNNING_LOW, TRIM_MEMORY_RUNNING_MODERATE, TRIM_MEMORY_UI_HIDDEN`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `ScalingModeSelectionDialogFragment()` |

  - ### Method Summary

    All Methods Static Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `static ScalingModeSelectionDialogFragment` | `newInstance​(IPlayerView playerView, String title)` | Creates a new dialog fragment that shows the available scaling modes and allows selecting the new mode.
    `static ScalingModeSelectionDialogFragment` | `newInstance​(IPlayerView playerView, String title, Converter<Integer,​String> converter)` | Creates a new dialog fragment that shows the available scaling modes and allows selecting the new mode.

    - ### Methods inherited from class com.castlabs.sdk.playerui.dialogs.AbstractSelectionDialog

      `getPlayerView, onClick, onCreateDialog, setPlayerView`

    - ### Methods inherited from class android.app.DialogFragment

      `dismiss, dismissAllowingStateLoss, dump, getDialog, getShowsDialog, getTheme, isCancelable, onActivityCreated, onAttach, onCancel, onCreate, onDestroyView, onDetach, onDismiss, onGetLayoutInflater, onSaveInstanceState, onStart, onStop, setCancelable, setShowsDialog, setStyle, show, show`

    - ### Methods inherited from class android.app.Fragment

      `equals, getActivity, getAllowEnterTransitionOverlap, getAllowReturnTransitionOverlap, getArguments, getChildFragmentManager, getContext, getEnterTransition, getExitTransition, getFragmentManager, getHost, getId, getLayoutInflater, getLoaderManager, getParentFragment, getReenterTransition, getResources, getRetainInstance, getReturnTransition, getSharedElementEnterTransition, getSharedElementReturnTransition, getString, getString, getTag, getTargetFragment, getTargetRequestCode, getText, getUserVisibleHint, getView, hashCode, instantiate, instantiate, isAdded, isDetached, isHidden, isInLayout, isRemoving, isResumed, isStateSaved, isVisible, onActivityResult, onAttach, onAttachFragment, onConfigurationChanged, onContextItemSelected, onCreateAnimator, onCreateContextMenu, onCreateOptionsMenu, onCreateView, onDestroy, onDestroyOptionsMenu, onHiddenChanged, onInflate, onInflate, onInflate, onLowMemory, onMultiWindowModeChanged, onMultiWindowModeChanged, onOptionsItemSelected, onOptionsMenuClosed, onPause, onPictureInPictureModeChanged, onPictureInPictureModeChanged, onPrepareOptionsMenu, onRequestPermissionsResult, onResume, onTrimMemory, onViewCreated, onViewStateRestored, postponeEnterTransition, registerForContextMenu, requestPermissions, setAllowEnterTransitionOverlap, setAllowReturnTransitionOverlap, setArguments, setEnterSharedElementCallback, setEnterTransition, setExitSharedElementCallback, setExitTransition, setHasOptionsMenu, setInitialSavedState, setMenuVisibility, setReenterTransition, setRetainInstance, setReturnTransition, setSharedElementEnterTransition, setSharedElementReturnTransition, setTargetFragment, setUserVisibleHint, shouldShowRequestPermissionRationale, startActivity, startActivity, startActivityForResult, startActivityForResult, startIntentSenderForResult, startPostponedEnterTransition, toString, unregisterForContextMenu`

    - ### Methods inherited from class java.lang.Object

      `getClass, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### ScalingModeSelectionDialogFragment

          public ScalingModeSelectionDialogFragment()

  - ### Method Detail

    - #### newInstance

          public static ScalingModeSelectionDialogFragment newInstance​(IPlayerView playerView,
                                                                       String title)

      Creates a new dialog fragment that shows the available scaling modes and allows selecting the new mode.
      Parameters:
        `playerView` - The player view
        `title` - the dialog title
      Returns:
        The dialog fragment

    - #### newInstance

          public static ScalingModeSelectionDialogFragment newInstance​(IPlayerView playerView,
                                                                       String title,
                                                                       Converter<Integer,​String> converter)

      Creates a new dialog fragment that shows the available scaling modes and allows selecting the new mode.
      Parameters:
        `playerView` - The player view
        `title` - the dialog title
        `converter` - The converter that is used to translate the existing scaling modes to string representations
      Returns:
        The dialog fragment