belongs to Maven artifact com.android.support:leanback-v17:28.0.0-alpha1
PlaybackBannerControlGlue
  public
  
  
  
  class
  PlaybackBannerControlGlue
  
  
  
  
  
  
  
    extends PlaybackBaseControlGlue<T extends PlayerAdapter>
  
  
  
  
  
  
| java.lang.Object | |||
| ↳ | android.support.v17.leanback.media.PlaybackGlue | ||
| ↳ | android.support.v17.leanback.media.PlaybackBaseControlGlue<T extends android.support.v17.leanback.media.PlayerAdapter> | ||
| ↳ | android.support.v17.leanback.media.PlaybackBannerControlGlue<T extends android.support.v17.leanback.media.PlayerAdapter> | ||
A helper class for managing a PlaybackControlsRow being displayed in
 PlaybackGlueHost. It supports standard playback control actions play/pause and
 skip next/previous. This helper class is a glue layer that manages interaction between the
 leanback UI components PlaybackControlsRow PlaybackControlsRowPresenter
 and a functional PlayerAdapter which represents the underlying
 media player.
 
Apps must pass a PlayerAdapter in the constructor for a specific
 implementation e.g. a MediaPlayerAdapter.
 
The glue has two action bars: primary action bars and secondary action bars. Apps
 can provide additional actions by overriding onCreatePrimaryActions(ArrayObjectAdapter) and / or
 onCreateSecondaryActions(ArrayObjectAdapter) and respond to actions by overriding
 onActionClicked(Action).
 
The subclass is responsible for implementing the "repeat mode" in
 onPlayCompleted().
 
 public class MyVideoFragment extends VideoFragment {
     @Override
     public void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         PlaybackBannerControlGlue playerGlue =
                 new PlaybackBannerControlGlue(getActivity(),
                         new MediaPlayerAdapter(getActivity()));
         playerGlue.setHost(new VideoFragmentGlueHost(this));
         playerGlue.setSubtitle("Leanback artist");
         playerGlue.setTitle("Leanback team at work");
         String uriPath = "android.resource://com.example.android.leanback/raw/video";
         playerGlue.getPlayerAdapter().setDataSource(Uri.parse(uriPath));
         playerGlue.playWhenPrepared();
     }
 }
  Summary
| Constants | |
|---|---|
| int | ACTION_CUSTOM_LEFT_FIRSTThe adapter key for the first custom control on the left side of the predefined primary controls. | 
| int | ACTION_CUSTOM_RIGHT_FIRSTThe adapter key for the first custom control on the right side of the predefined primary controls. | 
| int | ACTION_FAST_FORWARDThe adapter key for the fast forward control. | 
| int | ACTION_PLAY_PAUSEThe adapter key for the play/pause control. | 
| int | ACTION_REWINDThe adapter key for the rewind control. | 
| int | ACTION_SKIP_TO_NEXTThe adapter key for the skip to next control. | 
| int | ACTION_SKIP_TO_PREVIOUSThe adapter key for the skip to previous control. | 
| int | PLAYBACK_SPEED_FAST_L0The initial (level 0) fast forward playback speed. | 
| int | PLAYBACK_SPEED_FAST_L1The level 1 fast forward playback speed. | 
| int | PLAYBACK_SPEED_FAST_L2The level 2 fast forward playback speed. | 
| int | PLAYBACK_SPEED_FAST_L3The level 3 fast forward playback speed. | 
| int | PLAYBACK_SPEED_FAST_L4The level 4 fast forward playback speed. | 
| int | PLAYBACK_SPEED_INVALIDInvalid playback speed. | 
| int | PLAYBACK_SPEED_NORMALSpeed representing playback state that is playing normally. | 
| int | PLAYBACK_SPEED_PAUSEDSpeed representing playback state that is paused. | 
| Inherited constants | 
|---|
|  From
  class 
    android.support.v17.leanback.media.PlaybackBaseControlGlue
   | 
| Public constructors | |
|---|---|
| 
      PlaybackBannerControlGlue(Context context, int[] seekSpeeds, T impl)
      Constructor for the glue. | |
| 
      PlaybackBannerControlGlue(Context context, int[] fastForwardSpeeds, int[] rewindSpeeds, T impl)
      Constructor for the glue. | |
| Public methods | |
|---|---|
| 
        
        
        
        
        
        long | 
      getCurrentPosition()
      Gets current position of the player. | 
| 
        
        
        
        
        
        int[] | 
      getFastForwardSpeeds()
      Returns the fast forward speeds. | 
| 
        
        
        
        
        
        int[] | 
      getRewindSpeeds()
      Returns the rewind speeds. | 
| 
        
        
        
        
        
        void | 
      onActionClicked(Action action)
      Handles action clicks. | 
| 
        
        
        
        
        
        boolean | 
      onKey(View v, int keyCode, KeyEvent event)
      Handles key events and returns true if handled. | 
| 
        
        
        
        
        
        void | 
      pause()
      Pauses the media player. | 
| 
        
        
        
        
        
        void | 
      play()
      Starts the media player. | 
| 
        
        
        
        
        
        void | 
      setControlsRow(PlaybackControlsRow controlsRow)
      Sets the controls row to be managed by the glue layer. | 
| Protected methods | |
|---|---|
| 
        
        
        
        
        
        void | 
      onCreatePrimaryActions(ArrayObjectAdapter primaryActionsAdapter)
      May be overridden to add primary actions to the adapter. | 
| 
        
        
        
        
        
        PlaybackRowPresenter | 
      onCreateRowPresenter()
       | 
| 
        
        
        
        
        
        void | 
      onPlayCompleted()
      Event when play finishes, subclass may handling repeat mode here. | 
| 
        
        
        
        
        
        void | 
      onPlayStateChanged()
      Event when play state changed. | 
| Inherited methods | |
|---|---|
|  From
class 
  
    android.support.v17.leanback.media.PlaybackBaseControlGlue
  
 | |
|  From
class 
  
    android.support.v17.leanback.media.PlaybackGlue
  
 | |
|  From
class 
  
    java.lang.Object
  
 | |
|  From
interface 
  
    android.support.v17.leanback.widget.OnActionClickedListener
  
 | |
|  From
interface 
  
    android.view.View.OnKeyListener
  
 | |
Constants
ACTION_CUSTOM_LEFT_FIRST
int ACTION_CUSTOM_LEFT_FIRST
The adapter key for the first custom control on the left side of the predefined primary controls.
Constant Value: 1 (0x00000001)
ACTION_CUSTOM_RIGHT_FIRST
int ACTION_CUSTOM_RIGHT_FIRST
The adapter key for the first custom control on the right side of the predefined primary controls.
Constant Value: 4096 (0x00001000)
ACTION_FAST_FORWARD
int ACTION_FAST_FORWARD
The adapter key for the fast forward control.
Constant Value: 128 (0x00000080)
ACTION_PLAY_PAUSE
int ACTION_PLAY_PAUSE
The adapter key for the play/pause control.
Constant Value: 64 (0x00000040)
ACTION_REWIND
int ACTION_REWIND
The adapter key for the rewind control.
Constant Value: 32 (0x00000020)
ACTION_SKIP_TO_NEXT
int ACTION_SKIP_TO_NEXT
The adapter key for the skip to next control.
Constant Value: 256 (0x00000100)
ACTION_SKIP_TO_PREVIOUS
int ACTION_SKIP_TO_PREVIOUS
The adapter key for the skip to previous control.
Constant Value: 16 (0x00000010)
PLAYBACK_SPEED_FAST_L0
int PLAYBACK_SPEED_FAST_L0
The initial (level 0) fast forward playback speed. The negative of this value is for rewind at the same speed.
Constant Value: 10 (0x0000000a)
PLAYBACK_SPEED_FAST_L1
int PLAYBACK_SPEED_FAST_L1
The level 1 fast forward playback speed. The negative of this value is for rewind at the same speed.
Constant Value: 11 (0x0000000b)
PLAYBACK_SPEED_FAST_L2
int PLAYBACK_SPEED_FAST_L2
The level 2 fast forward playback speed. The negative of this value is for rewind at the same speed.
Constant Value: 12 (0x0000000c)
PLAYBACK_SPEED_FAST_L3
int PLAYBACK_SPEED_FAST_L3
The level 3 fast forward playback speed. The negative of this value is for rewind at the same speed.
Constant Value: 13 (0x0000000d)
PLAYBACK_SPEED_FAST_L4
int PLAYBACK_SPEED_FAST_L4
The level 4 fast forward playback speed. The negative of this value is for rewind at the same speed.
Constant Value: 14 (0x0000000e)
PLAYBACK_SPEED_INVALID
int PLAYBACK_SPEED_INVALID
Invalid playback speed.
Constant Value: -1 (0xffffffff)
PLAYBACK_SPEED_NORMAL
int PLAYBACK_SPEED_NORMAL
Speed representing playback state that is playing normally.
Constant Value: 1 (0x00000001)
PLAYBACK_SPEED_PAUSED
int PLAYBACK_SPEED_PAUSED
Speed representing playback state that is paused.
Constant Value: 0 (0x00000000)
Public constructors
PlaybackBannerControlGlue
PlaybackBannerControlGlue (Context context, int[] seekSpeeds, T impl)
Constructor for the glue.
| Parameters | |
|---|---|
| seekSpeeds | int: The array of seek speeds for fast forward and rewind. The maximum length of
                   the array is defined as NUMBER_OF_SEEK_SPEEDS. | 
| impl | T: Implementation to underlying media player. | 
PlaybackBannerControlGlue
PlaybackBannerControlGlue (Context context, int[] fastForwardSpeeds, int[] rewindSpeeds, T impl)
Constructor for the glue.
| Parameters | |
|---|---|
| fastForwardSpeeds | int: The array of seek speeds for fast forward. The maximum length of
                   the array is defined as NUMBER_OF_SEEK_SPEEDS. | 
| rewindSpeeds | int: The array of seek speeds for rewind. The maximum length of
                   the array is defined as NUMBER_OF_SEEK_SPEEDS. | 
| impl | T: Implementation to underlying media player. | 
Public methods
getCurrentPosition
long getCurrentPosition ()
Gets current position of the player. If the player is playing/paused, this
 method returns current position from PlayerAdapter. Otherwise, if the player is
 fastforwarding/rewinding, the method fake-pauses the PlayerAdapter and returns its
 own calculated position.
| Returns | |
|---|---|
| long | Current position of the player. | 
getFastForwardSpeeds
int[] getFastForwardSpeeds ()
Returns the fast forward speeds.
| Returns | |
|---|---|
| int[] | |
getRewindSpeeds
int[] getRewindSpeeds ()
Returns the rewind speeds.
| Returns | |
|---|---|
| int[] | |
onActionClicked
void onActionClicked (Action action)
Handles action clicks. A subclass may override this add support for additional actions.
| Parameters | |
|---|---|
| action | Action | 
onKey
boolean onKey (View v, int keyCode, KeyEvent event)
Handles key events and returns true if handled. A subclass may override this to provide additional support.
| Parameters | |
|---|---|
| v | View | 
| keyCode | int | 
| event | KeyEvent | 
| Returns | |
|---|---|
| boolean | |
play
void play ()
Starts the media player. Does nothing if isPrepared() is false. To wait
 isPrepared() to be true before playing, use playWhenPrepared().
setControlsRow
void setControlsRow (PlaybackControlsRow controlsRow)
Sets the controls row to be managed by the glue layer. If
 getPrimaryActionsAdapter() is not provided, a default
 ArrayObjectAdapter will be created and initialized in
 onCreatePrimaryActions(ArrayObjectAdapter). If
 getSecondaryActionsAdapter() is not provided, a default
 ArrayObjectAdapter will be created and initialized in
 onCreateSecondaryActions(ArrayObjectAdapter).
 The primary actions and playback state related aspects of the row
 are updated by the glue.
| Parameters | |
|---|---|
| controlsRow | PlaybackControlsRow | 
Protected methods
onCreatePrimaryActions
void onCreatePrimaryActions (ArrayObjectAdapter primaryActionsAdapter)
May be overridden to add primary actions to the adapter. Default implementation add
 PlaybackControlsRow.PlayPauseAction.
| Parameters | |
|---|---|
| primaryActionsAdapter | ArrayObjectAdapter: The adapter to add primaryActions. | 
onCreateRowPresenter
PlaybackRowPresenter onCreateRowPresenter ()
| Returns | |
|---|---|
| PlaybackRowPresenter | |
onPlayCompleted
void onPlayCompleted ()
Event when play finishes, subclass may handling repeat mode here.
onPlayStateChanged
void onPlayStateChanged ()
Event when play state changed.
- Interfaces
- Classes- MediaControllerAdapter
- MediaControllerGlue
- MediaPlayerAdapter
- PlaybackBannerControlGlue
- PlaybackBaseControlGlue
- PlaybackControlGlue
- PlaybackGlue
- PlaybackGlue.PlayerCallback
- PlaybackGlueHost
- PlaybackGlueHost.HostCallback
- PlaybackGlueHost.PlayerCallback
- PlaybackTransportControlGlue
- PlayerAdapter
- PlayerAdapter.Callback
 
