Most visited

Recently visited

MediaRouteButton

public class MediaRouteButton
extends View

java.lang.Object
   ↳ android.view.View
     ↳ android.support.v7.app.MediaRouteButton


媒体路线按钮允许用户选择路线并控制当前选择的路线。

应用程序必须指定用户应该被允许通过使用 setRouteSelector(MediaRouteSelector)方法指定 selector来选择的路线种类。

当选择默认路由或当前选择的路由与selector不匹配时,该按钮将显示为非活动状态,表示应用程序未连接到它想要使用的路线。 点击按钮打开一个MediaRouteChooserDialog ,允许用户选择一条路线。 如果没有非默认路由与选择器匹配,并且主动扫描不可能发现任何匹配的路由,则该按钮被禁用并且不能被点击。

当选择与选择器匹配的非默认路由时,按钮将显示为活动状态,表示应用程序已连接到它想要使用的路线。 如果路线正在连接到目的地但尚未完成,该按钮也可能出现在中间连接状态。 在任何一种情况下,单击该按钮将打开一个MediaRouteControllerDialog以允许用户控制或断开当前路线。

Prerequisites

使用媒体路线按钮,必须将活动的一个子类FragmentActivityandroid.support.v4支持库。 有关详细信息,请参阅支持库文档。

也可以看看:

Summary

Inherited XML attributes

From class android.view.View

Inherited constants

From class android.view.View

Inherited fields

From class android.view.View

Public constructors

MediaRouteButton(Context context)
MediaRouteButton(Context context, AttributeSet attrs)
MediaRouteButton(Context context, AttributeSet attrs, int defStyleAttr)

Public methods

MediaRouteDialogFactory getDialogFactory()

显示路径选择器或控制器对话框时,获取媒体路径对话框工厂使用。

MediaRouteSelector getRouteSelector()

获取媒体路由选择器,用于过滤用户可以使用媒体路由选择器对话框选择的路由。

void jumpDrawablesToCurrentState()

在与此视图关联的所有可绘制对象上调用 Drawable.jumpToCurrentState()

void onAttachedToWindow()

这在视图附加到窗口时被调用。

void onDetachedFromWindow()

这是在视图从窗口分离时调用的。

boolean performClick()

调用此视图的OnClickListener(如果已定义)。

boolean performLongClick()

调用此视图的OnLongClickListener(如果已定义)。

void setDialogFactory(MediaRouteDialogFactory factory)

显示路径选择器或控制器对话框时,设置要使用的媒体路径对话框工厂。

void setRemoteIndicatorDrawable(Drawable d)

设置可作为远程路由指示器的绘图。

void setRouteSelector(MediaRouteSelector selector)

设置媒体路由选择器,用于过滤用户可以使用媒体路由选择器对话框选择的路由。

void setVisibility(int visibility)

设置此视图的启用状态。

boolean showDialog()

显示路线选择器或控制器对话框。

Protected methods

void drawableStateChanged()

只要视图的状态发生变化,就会调用此函数,使得它影响所显示的可绘制状态。

int[] onCreateDrawableState(int extraSpace)

为此视图生成新的 Drawable状态。

void onDraw(Canvas canvas)

实施这个来做你的绘画。

void onMeasure(int widthMeasureSpec, int heightMeasureSpec)

测量视图及其内容以确定测量宽度和测量高度。

boolean verifyDrawable(Drawable who)

如果你的视图子类正在显示它自己的Drawable对象,它应该覆盖这个函数,并且对于它显示的任何Drawable返回true。

Inherited methods

From class android.view.View
From class java.lang.Object
From interface android.graphics.drawable.Drawable.Callback
From interface android.view.KeyEvent.Callback
From interface android.view.accessibility.AccessibilityEventSource

Public constructors

MediaRouteButton

MediaRouteButton (Context context)

Parameters
context Context

MediaRouteButton

MediaRouteButton (Context context, 
                AttributeSet attrs)

Parameters
context Context
attrs AttributeSet

MediaRouteButton

MediaRouteButton (Context context, 
                AttributeSet attrs, 
                int defStyleAttr)

Parameters
context Context
attrs AttributeSet
defStyleAttr int

Public methods

getDialogFactory

MediaRouteDialogFactory getDialogFactory ()

显示路径选择器或控制器对话框时,获取媒体路径对话框工厂使用。

Returns
MediaRouteDialogFactory The dialog factory, never null.

getRouteSelector

MediaRouteSelector getRouteSelector ()

获取媒体路由选择器,用于过滤用户可以使用媒体路由选择器对话框选择的路由。

Returns
MediaRouteSelector The selector, never null.

jumpDrawablesToCurrentState

void jumpDrawablesToCurrentState ()

在与此视图关联的所有可绘制对象上调用 Drawable.jumpToCurrentState()

如果有一个StateListAnimator附加到这个视图,也调用 jumpToCurrentState()

onAttachedToWindow

void onAttachedToWindow ()

这在视图附加到窗口时被调用。 此时它有一个Surface并将开始绘制。 注意这个函数保证在onDraw(android.graphics.Canvas)之前被调用,但是它可能在第一个onDraw之前的任何时候被调用,包括在onMeasure(int, int)之前或之后。

onDetachedFromWindow

void onDetachedFromWindow ()

这是在视图从窗口分离时调用的。 此时它不再有绘图表面。

performClick

boolean performClick ()

调用此视图的OnClickListener(如果已定义)。 执行与点击相关的所有常规操作:报告辅助功能事件,播放声音等。

Returns
boolean True there was an assigned OnClickListener that was called, false otherwise is returned.

performLongClick

boolean performLongClick ()

调用此视图的OnLongClickListener(如果已定义)。 如果OnLongClickListener没有使用该事件,则调用上下文菜单。

Returns
boolean true if one of the above receivers consumed the event, false otherwise

setDialogFactory

void setDialogFactory (MediaRouteDialogFactory factory)

显示路径选择器或控制器对话框时,设置要使用的媒体路径对话框工厂。

Parameters
factory MediaRouteDialogFactory: The dialog factory, must not be null.

setRemoteIndicatorDrawable

void setRemoteIndicatorDrawable (Drawable d)

设置可作为远程路由指示器的绘图。

Parameters
d Drawable

setRouteSelector

void setRouteSelector (MediaRouteSelector selector)

设置媒体路由选择器,用于过滤用户可以使用媒体路由选择器对话框选择的路由。

Parameters
selector MediaRouteSelector: The selector, must not be null.

setVisibility

void setVisibility (int visibility)

设置此视图的启用状态。

Parameters
visibility int: One of VISIBLE, INVISIBLE, or GONE.

showDialog

boolean showDialog ()

显示路线选择器或控制器对话框。

如果选择默认路线或当前选择的路线与selector不匹配,则显示路线选择器对话框。 否则,显示路线控制器对话框,以便为用户提供选择以断开路线或执行其他控制操作,例如设置路线的音量。

应用程序可以通过调用 setDialogFactory(MediaRouteDialogFactory)来定制对话框来提供一个定制的对话框工厂。

Returns
boolean True if the dialog was actually shown.
Throws
IllegalStateException if the activity is not a subclass of FragmentActivity.

Protected methods

drawableStateChanged

void drawableStateChanged ()

只要视图的状态发生变化,就会调用此函数,使得它影响所显示的可绘制状态。

如果View有一个StateListAnimator,它也将被调用来运行必要的状态改变动画。

重写此功能时,一定要调用超类。

onCreateDrawableState

int[] onCreateDrawableState (int extraSpace)

为此视图生成新的Drawable状态。 当缓存的Drawable状态被确定为无效时,这由视图系统调用。 要检索当前状态,您应该使用getDrawableState()

Parameters
extraSpace int: if non-zero, this is the number of extra entries you would like in the returned array in which you can place your own states.
Returns
int[] Returns an array holding the current Drawable state of the view.

onDraw

void onDraw (Canvas canvas)

实施这个来做你的绘画。

Parameters
canvas Canvas: the canvas on which the background will be drawn

onMeasure

void onMeasure (int widthMeasureSpec, 
                int heightMeasureSpec)

测量视图及其内容以确定测量宽度和测量高度。 此方法由measure(int, int)调用, measure(int, int)子类覆盖以提供其内容的准确和有效的度量。

合同:覆盖此方法时, 必须致电setMeasuredDimension(int, int)以存储此视图的测量宽度和高度。 如果不这样做,将触发IllegalStateException ,由measure(int, int)引发。 调用超类' onMeasure(int, int)是一种有效的用法。

Measure的基类实现默认为背景大小,除非MeasureSpec允许更大的大小。 子类应该覆盖onMeasure(int, int)以提供更好的内容度量。

如果此方法被覆盖,则子类的责任是确保测量的高度和宽度至少为视图的最小高度和宽度( getSuggestedMinimumHeight()getSuggestedMinimumWidth() )。

Parameters
widthMeasureSpec int: horizontal space requirements as imposed by the parent. The requirements are encoded with View.MeasureSpec.
heightMeasureSpec int: vertical space requirements as imposed by the parent. The requirements are encoded with View.MeasureSpec.

verifyDrawable

boolean verifyDrawable (Drawable who)

如果你的视图子类正在显示它自己的Drawable对象,它应该覆盖这个函数,并且对于它显示的任何Drawable返回true。 这样可以安排这些可绘制的动画。

重写此功能时,一定要调用超类。

Parameters
who Drawable: The Drawable to verify. Return true if it is one you are displaying, else return the result of calling through to the super class.
Returns
boolean boolean If true than the Drawable is being displayed in the view; else false and it is not allowed to animate.

Hooray!