Most visited

Recently visited

AbstractMediaItemPresenter

public abstract class AbstractMediaItemPresenter
extends RowPresenter

java.lang.Object
   ↳ android.support.v17.leanback.widget.Presenter
     ↳ android.support.v17.leanback.widget.RowPresenter
       ↳ android.support.v17.leanback.widget.AbstractMediaItemPresenter


摘要Presenter用于以播放列表格式呈现媒体项目的类别。 如果媒体行希望包含自定义操作,则为该演示者提供的媒体项目数据可以实现界面MultiActionsProvider 播放列表中的媒体项目排列为垂直列表,每行保存由该类别的用户提供的每个媒体项目的详细信息以及一组可选的自定义操作。 每个媒体项目的详细信息和操作都可以单独调整。 通过设置主题的属性可以控制每个媒体行组件的外观。 演示者可以通过将setHasMediaRowSeparator(boolean)设置为true来选择性地在媒体行之间提供行分隔符。

子类必须覆盖 onBindMediaDetails(AbstractMediaItemPresenter.ViewHolder, Object)才能将其媒体项目模型数据绑定到每个行视图。

OnItemViewClickedListenerOnItemViewSelectedListener可以以相同的方式用于处理媒体细节或每个单独操作视图上的选择或点击事件。

AbstractMediaListHeaderPresenter可与此演示者结合使用,以显示带有标题视图的播放列表。

Summary

Nested classes

class AbstractMediaItemPresenter.ViewHolder

ViewHolder为AbstractMediaItemPresenter

Inherited constants

From class android.support.v17.leanback.widget.RowPresenter

Public constructors

AbstractMediaItemPresenter()

用于创建抽象媒体项目演示者的构造函数。

AbstractMediaItemPresenter(int themeId)

用于创建抽象媒体项目演示者的构造函数。

Public methods

Presenter getActionPresenter()

返回用于呈现媒体项目行动的演示者。

int getThemeId()

返回定义属性的主题的资源ID,该属性控制媒体项目行中不同小部件的外观。

boolean hasMediaRowSeparator()
boolean isUsingDefaultSelectEffect()

如果此RowPresenter使用默认的调光效果,则返回true。

void setActionPresenter(Presenter actionPresenter)

设置动作演示者呈现每个媒体项目行中的每个可选自定义动作。

void setBackgroundColor(int color)

设置播放列表中行视图的背景颜色。

void setHasMediaRowSeparator(boolean hasSeparator)

指定是否应在媒体项目行之间使用行分隔符。

void setThemeId(int themeId)

设置用于设置媒体项行组件的主题。

Protected methods

RowPresenter.ViewHolder createRowViewHolder(ViewGroup parent)

调用为Row创建ViewHolder对象。

boolean isClippingChildren()

如果行视图应该剪切它的子元素,则返回true。

abstract void onBindMediaDetails(AbstractMediaItemPresenter.ViewHolder vh, Object item)

将媒体项目详细信息绑定到由 AbstractMediaItemPresenter提供的 AbstractMediaItemPresenter

void onBindRowActions(AbstractMediaItemPresenter.ViewHolder vh)

将给定的媒体项目对象操作绑定到给定的ViewHolder的操作视图。

void onBindRowViewHolder(RowPresenter.ViewHolder vh, Object item)

将给定的行对象绑定到给定的ViewHolder。

void onUnbindMediaDetails(AbstractMediaItemPresenter.ViewHolder vh)

AbstractMediaItemPresenter提供的视图中解除媒体项目的详细信息。

Inherited methods

From class android.support.v17.leanback.widget.RowPresenter
From class android.support.v17.leanback.widget.Presenter
From class java.lang.Object
From interface android.support.v17.leanback.widget.FacetProvider

Public constructors

AbstractMediaItemPresenter

AbstractMediaItemPresenter ()

用于创建抽象媒体项目演示者的构造函数。

AbstractMediaItemPresenter

AbstractMediaItemPresenter (int themeId)

用于创建抽象媒体项目演示者的构造函数。

Parameters
themeId int: The resource id of the theme that defines attributes controlling the appearance of different widgets in a media item row.

Public methods

getActionPresenter

Presenter getActionPresenter ()

返回用于呈现媒体项目行动的演示者。

Returns
Presenter the presenter used to render a media item row actions.

getThemeId

int getThemeId ()

返回定义属性的主题的资源ID,该属性控制媒体项目行中不同小部件的外观。

Returns
int The resource id of the theme that defines attributes controlling the appearance of different widgets in a media item row.

hasMediaRowSeparator

boolean hasMediaRowSeparator ()

Returns
boolean

isUsingDefaultSelectEffect

boolean isUsingDefaultSelectEffect ()

如果此RowPresenter使用默认的调光效果,则返回true。 子类可能(很可能)返回false并覆盖onSelectLevelChanged(ViewHolder)

Returns
boolean

setActionPresenter

void setActionPresenter (Presenter actionPresenter)

设置动作演示者呈现每个媒体项目行中的每个可选自定义动作。

Parameters
actionPresenter Presenter: the presenter to be used for rendering a media item row actions.

setBackgroundColor

void setBackgroundColor (int color)

设置播放列表中行视图的背景颜色。 如果未设置,则使用来自主题的默认颜色defaultBrandColor。 如果指定了defaultBrandColor,则默认为v21上的android:attr / colorPrimary。

Parameters
color int: The ARGB color used to set as the media list background color.

setHasMediaRowSeparator

void setHasMediaRowSeparator (boolean hasSeparator)

指定是否应在媒体项目行之间使用行分隔符。

Parameters
hasSeparator boolean: true if a separator should be displayed, false otherwise.

setThemeId

void setThemeId (int themeId)

设置用于设置媒体项行组件的主题。

Parameters
themeId int: The resource id of the theme that defines attributes controlling the appearance of different widgets in a media item row.

Protected methods

createRowViewHolder

RowPresenter.ViewHolder createRowViewHolder (ViewGroup parent)

调用为Row创建ViewHolder对象。 子类将重写此方法以返回不同的具体ViewHolder对象。

Parameters
parent ViewGroup: The parent View for the Row's view holder.
Returns
RowPresenter.ViewHolder A ViewHolder for the Row's View.

isClippingChildren

boolean isClippingChildren ()

如果行视图应该剪切它的子元素,则返回true。 clipChildren标志在initializeRowViewHolder(ViewHolder)视图中initializeRowViewHolder(ViewHolder) 请注意,幻灯片切换或爆炸转换需要关闭clipChildren。 默认值为false。

Returns
boolean

onBindMediaDetails

void onBindMediaDetails (AbstractMediaItemPresenter.ViewHolder vh, 
                Object item)

将媒体项目详细信息绑定到由AbstractMediaItemPresenter提供的AbstractMediaItemPresenter 该方法将由该演示者的用户覆盖。 这个主持人的子类可以通过调用任何媒体项目编号,名称,或持续时间的访问并结合个人的意见(取决于两者的观点是根据提供的主题属性可见), getMediaItemNumberView()getMediaItemNameView() ,并getMediaItemDurationView() ,在AbstractMediaItemPresenter.ViewHolder作为本演示者的参数vh提供。

Parameters
vh AbstractMediaItemPresenter.ViewHolder: The ViewHolder for this AbstractMediaItemPresenter.
item Object: The media item row object being presented.

onBindRowActions

void onBindRowActions (AbstractMediaItemPresenter.ViewHolder vh)

将给定的媒体项目对象操作绑定到给定的ViewHolder的操作视图。

Parameters
vh AbstractMediaItemPresenter.ViewHolder: ViewHolder for the media item.

onBindRowViewHolder

void onBindRowViewHolder (RowPresenter.ViewHolder vh, 
                Object item)

将给定的行对象绑定到给定的ViewHolder。 派生类RowPresenter重写onBindRowViewHolder(ViewHolder, Object)必须通过超类的这个方法的实现来调用。

Parameters
vh RowPresenter.ViewHolder
item Object

onUnbindMediaDetails

void onUnbindMediaDetails (AbstractMediaItemPresenter.ViewHolder vh)

AbstractMediaItemPresenter提供的视图中解除媒体项目详细信息。 如果需要,此方法可由该演示者的子类覆盖。

Parameters
vh AbstractMediaItemPresenter.ViewHolder: ViewHolder to unbind from.

Hooray!