Presentation Class

Definition

Base class for presentations.

[Android.Runtime.Register("android/app/Presentation", DoNotGenerateAcw=true)]
public class Presentation : Android.App.Dialog
[<Android.Runtime.Register("android/app/Presentation", DoNotGenerateAcw=true)>]
type Presentation = class
    inherit Dialog
Inheritance
Presentation
Attributes

Remarks

Base class for presentations.

A presentation is a special kind of dialog whose purpose is to present content on a secondary display. A Presentation is associated with the target Display at creation time and configures its context and resource configuration according to the display's metrics.

Notably, the Context of a presentation is different from the context of its containing Activity. It is important to inflate the layout of a presentation and load other resources using the presentation's own context to ensure that assets of the correct size and density for the target display are loaded.

A presentation is automatically canceled (see Dialog#cancel()) when the display to which it is attached is removed. An activity should take care of pausing and resuming whatever content is playing within the presentation whenever the activity itself is paused or resumed.

<h3>Choosing a presentation display</h3>

Before showing a Presentation it's important to choose the Display on which it will appear. Choosing a presentation display is sometimes difficult because there may be multiple displays attached. Rather than trying to guess which display is best, an application should let the system choose a suitable presentation display.

There are two main ways to choose a Display.

<h4>Using the media router to choose a presentation display</h4>

The easiest way to choose a presentation display is to use the android.media.MediaRouter MediaRouter API. The media router service keeps track of which audio and video routes are available on the system. The media router sends notifications whenever routes are selected or unselected or when the preferred presentation display of a route changes. So an application can simply watch for these notifications and show or dismiss a presentation on the preferred presentation display automatically.

The preferred presentation display is the display that the media router recommends that the application should use if it wants to show content on the secondary display. Sometimes there may not be a preferred presentation display in which case the application should show its content locally without using a presentation.

Here's how to use the media router to create and show a presentation on the preferred presentation display using android.media.MediaRouter.RouteInfo#getPresentationDisplay().

MediaRouter mediaRouter = (MediaRouter) context.getSystemService(Context.MEDIA_ROUTER_SERVICE);
            MediaRouter.RouteInfo route = mediaRouter.getSelectedRoute(MediaRouter.ROUTE_TYPE_LIVE_VIDEO);
            if (route != null) {
                Display presentationDisplay = route.getPresentationDisplay();
                if (presentationDisplay != null) {
                    Presentation presentation = new MyPresentation(context, presentationDisplay);
                    presentation.show();
                }
            }

The following sample code from ApiDemos demonstrates how to use the media router to automatically switch between showing content in the main activity and showing the content in a presentation when a presentation display is available.

{

Java documentation for android.app.Presentation.

Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License.

Constructors

Presentation(Context, Display)

Creates a new presentation that is attached to the specified display using the default theme.

Presentation(Context, Display, Int32)

Creates a new presentation that is attached to the specified display using the optionally specified theme.

Presentation(IntPtr, JniHandleOwnership)

A constructor used when creating managed representations of JNI objects; called by the runtime.

Properties

ActionBar

Retrieve the ActionBar attached to this dialog, if present.

(Inherited from Dialog)
Class

Returns the runtime class of this Object.

(Inherited from Object)
Context

Retrieve the Context this Dialog is running in.

(Inherited from Dialog)
CurrentFocus

Call android.view.Window#getCurrentFocus on the Window if this Activity to return the currently focused view.

(Inherited from Dialog)
Display

Gets the Display that this presentation appears on.

Handle

The handle to the underlying Android instance.

(Inherited from Object)
IsShowing (Inherited from Dialog)
JniIdentityHashCode (Inherited from Object)
JniPeerMembers
LayoutInflater (Inherited from Dialog)
OnBackInvokedDispatcher

Returns the OnBackInvokedDispatcher instance associated with the window that this dialog is attached to.

(Inherited from Dialog)
OwnerActivity

Returns the Activity that owns this Dialog. -or- Sets the Activity that owns this dialog.

(Inherited from Dialog)
PeerReference (Inherited from Object)
Resources

Gets the Resources that should be used to inflate the layout of this presentation.

SearchEvent

During the onSearchRequested() callbacks, this function will return the SearchEvent that triggered the callback, if it exists.

(Inherited from Dialog)
ThresholdClass

This API supports the Mono for Android infrastructure and is not intended to be used directly from your code.

ThresholdType

This API supports the Mono for Android infrastructure and is not intended to be used directly from your code.

VolumeControlStream

By default, this will use the owner Activity's suggested stream type.

(Inherited from Dialog)
Window

Retrieve the current Window for the activity.

(Inherited from Dialog)

Methods

AddContentView(View, ViewGroup+LayoutParams)

Add an additional content view to the screen.

(Inherited from Dialog)
Cancel()

Cancel the dialog.

(Inherited from Dialog)
Clone()

Creates and returns a copy of this object.

(Inherited from Object)
CloseOptionsMenu() (Inherited from Dialog)
Create()

Forces immediate creation of the dialog.

(Inherited from Dialog)
Dismiss()

Dismiss this dialog, removing it from the screen.

(Inherited from Dialog)
DispatchGenericMotionEvent(MotionEvent)

Called to process generic motion events.

(Inherited from Dialog)
DispatchKeyEvent(KeyEvent)

Called to process key events.

(Inherited from Dialog)
DispatchKeyShortcutEvent(KeyEvent)

Called to process a key shortcut event.

(Inherited from Dialog)
DispatchPopulateAccessibilityEvent(AccessibilityEvent)

Called to process population of AccessibilityEvents.

(Inherited from Dialog)
DispatchTouchEvent(MotionEvent)

Called to process touch screen events.

(Inherited from Dialog)
DispatchTrackballEvent(MotionEvent)

Called to process trackball events.

(Inherited from Dialog)
Dispose() (Inherited from Object)
Dispose(Boolean) (Inherited from Object)
Equals(Object)

Indicates whether some other object is "equal to" this one.

(Inherited from Object)
FindViewById(Int32)

Finds the first descendant view with the given ID or null if the ID is invalid (< 0), there is no matching view in the hierarchy, or the dialog has not yet been fully created (for example, via #show() or #create()).

(Inherited from Dialog)
FindViewById<T>(Int32) (Inherited from Dialog)
GetHashCode()

Returns a hash code value for the object.

(Inherited from Object)
Hide()

Hide the dialog, but do not dismiss it.

(Inherited from Dialog)
InvalidateOptionsMenu() (Inherited from Dialog)
JavaFinalize()

Called by the garbage collector on an object when garbage collection determines that there are no more references to the object.

(Inherited from Object)
Notify()

Wakes up a single thread that is waiting on this object's monitor.

(Inherited from Object)
NotifyAll()

Wakes up all threads that are waiting on this object's monitor.

(Inherited from Object)
OnActionModeFinished(ActionMode)

To be added

        Note that if you override this method you should always call through
        to the superclass implementation by calling super.
(Inherited from Dialog)
OnActionModeStarted(ActionMode)

To be added

        Note that if you override this method you should always call through
        to the superclass implementation by calling super.
(Inherited from Dialog)
OnAttachedToWindow()

Called when the window has been attached to the window manager.

(Inherited from Dialog)
OnBackPressed()

Called when the dialog has detected the user's press of the back key.

(Inherited from Dialog)
OnContentChanged()

This hook is called whenever the content view of the screen changes (due to a call to M:Android.Views.Window.SetContentView(Android.Views.View,.LayoutParams) or AddContentView(View, ViewGroup+LayoutParams)).

(Inherited from Dialog)
OnContextItemSelected(IMenuItem) (Inherited from Dialog)
OnContextMenuClosed(IMenu) (Inherited from Dialog)
OnCreate(Bundle)

Similar to Activity#onCreate, you should initialize your dialog in this method, including calling #setContentView.

(Inherited from Dialog)
OnCreateContextMenu(IContextMenu, View, IContextMenuContextMenuInfo)

Called when the context menu for this view is being built.

(Inherited from Dialog)
OnCreateOptionsMenu(IMenu)

It is usually safe to proxy this call to the owner activity's Activity#onCreateOptionsMenu(Menu) if the client desires the same menu for this Dialog.

(Inherited from Dialog)
OnCreatePanelMenu(Int32, IMenu)

Initialize the contents of the menu for panel 'featureId'.

(Inherited from Dialog)
OnCreatePanelView(Int32)

Instantiate the view to display in the panel for 'featureId'.

(Inherited from Dialog)
OnDetachedFromWindow()

Called when the window has been attached to the window manager.

(Inherited from Dialog)
OnDisplayChanged()

Called by the system when the properties of the Display to which the presentation is attached have changed.

OnDisplayRemoved()

Called by the system when the Display to which the presentation is attached has been removed.

OnGenericMotionEvent(MotionEvent)

Called when a generic motion event was not handled by any of the views inside of the dialog.

(Inherited from Dialog)
OnKeyDown(Keycode, KeyEvent)

A key was pressed down.

(Inherited from Dialog)
OnKeyLongPress(Keycode, KeyEvent)

Default implementation of KeyEvent.Callback#onKeyLongPress(int, KeyEvent) KeyEvent.Callback.onKeyLongPress(): always returns false (doesn't handle the event).

(Inherited from Dialog)
OnKeyMultiple(Keycode, Int32, KeyEvent)

Default implementation of KeyEvent.Callback#onKeyMultiple(int, int, KeyEvent) KeyEvent.Callback.onKeyMultiple(): always returns false (doesn't handle the event).

(Inherited from Dialog)
OnKeyShortcut(Keycode, KeyEvent)

Called when a key shortcut event is not handled by any of the views in the Dialog.

(Inherited from Dialog)
OnKeyUp(Keycode, KeyEvent)

A key was released.

(Inherited from Dialog)
OnMenuItemSelected(Int32, IMenuItem)

Called when a panel's menu item has been selected by the user.

(Inherited from Dialog)
OnMenuOpened(Int32, IMenu)

Called when a panel's menu is opened by the user.

(Inherited from Dialog)
OnOptionsItemSelected(IMenuItem) (Inherited from Dialog)
OnOptionsMenuClosed(IMenu) (Inherited from Dialog)
OnPanelClosed(Int32, IMenu)

Called when a panel is being closed.

(Inherited from Dialog)
OnPrepareOptionsMenu(IMenu)

It is usually safe to proxy this call to the owner activity's Activity#onPrepareOptionsMenu(Menu) if the client desires the same menu for this Dialog.

(Inherited from Dialog)
OnPreparePanel(Int32, View, IMenu)

Prepare a panel to be displayed.

(Inherited from Dialog)
OnRestoreInstanceState(Bundle)

Restore the state of the dialog from a previously saved bundle.

(Inherited from Dialog)
OnSaveInstanceState()

Saves the state of the dialog into a bundle.

(Inherited from Dialog)
OnSearchRequested()

This hook is called when the user signals the desire to start a search.

(Inherited from Dialog)
OnSearchRequested(SearchEvent)

This hook is called when the user signals the desire to start a search.

(Inherited from Dialog)
OnStart()

Called when the dialog is starting.

(Inherited from Dialog)
OnStop()

Called to tell you that you're stopping.

(Inherited from Dialog)
OnTouchEvent(MotionEvent)

Called when a touch screen event was not handled by any of the views under it.

(Inherited from Dialog)
OnTrackballEvent(MotionEvent)

Called when the trackball was moved and not handled by any of the views inside of the activity.

(Inherited from Dialog)
OnWindowAttributesChanged(WindowManagerLayoutParams)

This is called whenever the current window attributes change.

(Inherited from Dialog)
OnWindowFocusChanged(Boolean)

This hook is called whenever the window focus changes.

(Inherited from Dialog)
OnWindowStartingActionMode(ActionMode+ICallback)

Called when an action mode is being started for this window.

(Inherited from Dialog)
OnWindowStartingActionMode(ActionMode+ICallback, ActionModeType) (Inherited from Dialog)
OpenContextMenu(View) (Inherited from Dialog)
OpenOptionsMenu() (Inherited from Dialog)
RegisterForContextMenu(View) (Inherited from Dialog)
RequestWindowFeature(Int32)

Enable extended window features.

(Inherited from Dialog)
RequireViewById(Int32)

Finds the first descendant view with the given ID or throws an IllegalArgumentException if the ID is invalid (< 0), there is no matching view in the hierarchy, or the dialog has not yet been fully created (for example, via #show() or #create()).

(Inherited from Dialog)
SetCancelable(Boolean)

Sets whether this dialog is cancelable with the KeyEvent#KEYCODE_BACK BACK key.

(Inherited from Dialog)
SetCanceledOnTouchOutside(Boolean)

Sets whether this dialog is canceled when touched outside the window's bounds.

(Inherited from Dialog)
SetCancelMessage(Message)

Set a message to be sent when the dialog is canceled.

(Inherited from Dialog)
SetContentView(Int32)

Set the screen content from a layout resource.

(Inherited from Dialog)
SetContentView(View)

Set the screen content to an explicit view.

(Inherited from Dialog)
SetContentView(View, ViewGroup+LayoutParams)

Set the screen content from a layout resource.

(Inherited from Dialog)
SetDismissMessage(Message)

Set a message to be sent when the dialog is dismissed.

(Inherited from Dialog)
SetFeatureDrawable(Int32, Drawable)

Convenience for calling android.view.Window#setFeatureDrawable(int, Drawable).

(Inherited from Dialog)
SetFeatureDrawableAlpha(Int32, Int32)

Convenience for calling android.view.Window#setFeatureDrawableAlpha.

(Inherited from Dialog)
SetFeatureDrawableResource(Int32, Int32)

Convenience for calling android.view.Window#setFeatureDrawableResource.

(Inherited from Dialog)
SetFeatureDrawableUri(Int32, Uri)

Convenience for calling android.view.Window#setFeatureDrawableUri.

(Inherited from Dialog)
SetHandle(IntPtr, JniHandleOwnership)

Sets the Handle property.

(Inherited from Object)
SetOnCancelListener(IDialogInterfaceOnCancelListener)

Set a listener to be invoked when the dialog is canceled.

(Inherited from Dialog)
SetOnDismissListener(IDialogInterfaceOnDismissListener)

Set a listener to be invoked when the dialog is dismissed.

(Inherited from Dialog)
SetOnKeyListener(IDialogInterfaceOnKeyListener)

Sets the callback that will be called if a key is dispatched to the dialog.

(Inherited from Dialog)
SetOnShowListener(IDialogInterfaceOnShowListener)

Sets a listener to be invoked when the dialog is shown.

(Inherited from Dialog)
SetTitle(ICharSequence)

Set the title text for this dialog's window.

(Inherited from Dialog)
SetTitle(Int32)

Set the title text for this dialog's window.

(Inherited from Dialog)
SetTitle(String)

Set the title text for this dialog's window.

(Inherited from Dialog)
Show()

Start the dialog and display it on screen.

(Inherited from Dialog)
TakeKeyEvents(Boolean)

Request that key events come to this dialog.

(Inherited from Dialog)
ToArray<T>() (Inherited from Object)
ToString()

Returns a string representation of the object.

(Inherited from Object)
UnregisterForContextMenu(View) (Inherited from Dialog)
UnregisterFromRuntime() (Inherited from Object)
Wait()

Causes the current thread to wait until it is awakened, typically by being <em>notified</em> or <em>interrupted</em>.

(Inherited from Object)
Wait(Int64)

Causes the current thread to wait until it is awakened, typically by being <em>notified</em> or <em>interrupted</em>, or until a certain amount of real time has elapsed.

(Inherited from Object)
Wait(Int64, Int32)

Causes the current thread to wait until it is awakened, typically by being <em>notified</em> or <em>interrupted</em>, or until a certain amount of real time has elapsed.

(Inherited from Object)

Events

CancelEvent (Inherited from Dialog)
DismissEvent (Inherited from Dialog)
KeyPress (Inherited from Dialog)
ShowEvent (Inherited from Dialog)

Explicit Interface Implementations

IJavaPeerable.Disposed() (Inherited from Object)
IJavaPeerable.DisposeUnlessReferenced() (Inherited from Object)
IJavaPeerable.Finalized() (Inherited from Object)
IJavaPeerable.JniManagedPeerState (Inherited from Object)
IJavaPeerable.SetJniIdentityHashCode(Int32) (Inherited from Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) (Inherited from Object)
IJavaPeerable.SetPeerReference(JniObjectReference) (Inherited from Object)

Extension Methods

JavaCast<TResult>(IJavaObject)

Performs an Android runtime-checked type conversion.

JavaCast<TResult>(IJavaObject)
GetJniTypeName(IJavaPeerable)

Applies to