public class ListRowPresenter
extends RowPresenter
java.lang.Object | |||
↳ | android.support.v17.leanback.widget.Presenter | ||
↳ | android.support.v17.leanback.widget.RowPresenter | ||
↳ | android.support.v17.leanback.widget.ListRowPresenter |
ListRowPresenter呈现 ListRow
使用 HorizontalGridView
在托管 ListRowView
。
setHoverCardPresenterSelector(PresenterSelector)
can be used to display a view for the currently focused list item below the rendered list. This view is known as a hover card.
RowPresenter
's default dimming effect and draws a dim overlay on each view individually. A subclass may override and disable
isUsingDefaultListSelectEffect()
and write its own dim effect in
onSelectLevelChanged(RowPresenter.ViewHolder)
.
setShadowEnabled(boolean)
to disable shadows. A subclass may override and return false in
isUsingDefaultShadow()
and replace with its own shadow implementation.
Nested classes |
|
---|---|
class |
ListRowPresenter.SelectItemViewHolderTask ListRowPresenter.ViewHolder上的一项任务,可以根据HorizontalGridView中的位置选择一个项目,并在其上执行可选的项目任务。 |
class |
ListRowPresenter.ViewHolder ListRowPresenter的ViewHolder。 |
Inherited constants |
---|
From class android.support.v17.leanback.widget.RowPresenter
|
Public constructors |
|
---|---|
ListRowPresenter() 用默认值构造一个ListRowPresenter。 |
|
ListRowPresenter(int focusZoomFactor) 用给定的参数构造一个ListRowPresenter。 |
|
ListRowPresenter(int focusZoomFactor, boolean useFocusDimmer) 用给定的参数构造一个ListRowPresenter。 |
Public methods |
|
---|---|
final boolean |
areChildRoundedCornersEnabled() 如果为此行的子项启用了圆角,则返回true。 |
final void |
enableChildRoundedCorners(boolean enable) 在此行的子项上启用或禁用圆角。 |
void |
freeze(RowPresenter.ViewHolder holder, boolean freeze) 冻结/解冻行,通常在转换开始/结束时使用。 |
int |
getExpandedRowHeight() 返回由此Presenter创建的行的展开行高度。 |
final int |
getFocusZoomFactor() 返回用于焦点突出显示的缩放系数。 |
final PresenterSelector |
getHoverCardPresenterSelector() 返回用于在悬停卡片中显示选定对象的 |
int |
getRecycledPoolSize(Presenter presenter) 返回给定演示者的再循环池大小。 |
int |
getRowHeight() 返回此Presenter创建的列表行的行高。 |
final boolean |
getShadowEnabled() 如果启用子阴影,则返回true。 |
final int |
getZoomFactor() 此方法已弃用。 改用 |
final boolean |
isFocusDimmerUsed() 如果聚焦调光器用于聚焦突出显示,则返回true; 否则为假。 |
final boolean |
isKeepChildForeground() 如果保持该行的子节点的前景,则返回true,否则返回false。 |
boolean |
isUsingDefaultListSelectEffect() 返回true,以便将默认选择效果应用于 |
final boolean |
isUsingDefaultSelectEffect() ListRowPresenter覆盖默认选择效果 |
boolean |
isUsingDefaultShadow() 如果SDK> = 18,则返回true,其中默认阴影应用于每个 |
boolean |
isUsingZOrder(Context context) 如果SDK> = L,则返回true,其中启用Z阴影,以便在水平列表的每个子项上启用Z顺序。 |
void |
setEntranceTransitionState(RowPresenter.ViewHolder holder, boolean afterEntrance) 更改视图的可见性。 |
void |
setExpandedRowHeight(int rowHeight) 设置由此Presenter创建的行的展开行高度。 |
final void |
setHoverCardPresenterSelector(PresenterSelector selector) 设置用于在悬停卡片中显示选定对象的 |
final void |
setKeepChildForeground(boolean keep) 当ListRowPresenter在子项上应用叠加颜色时,它可能会将子项的前景变为可绘制。 |
void |
setNumRows(int numRows) 设置渲染项目列表的行数。 |
void |
setRecycledPoolSize(Presenter presenter, int size) 为给定的演示者设置循环池大小。 |
void |
setRowHeight(int rowHeight) 设置由此Presenter创建的行的行高。 |
final void |
setShadowEnabled(boolean enabled) 启用或禁用子阴影。 |
Protected methods |
|
---|---|
RowPresenter.ViewHolder |
createRowViewHolder(ViewGroup parent) 调用为Row创建ViewHolder对象。 |
ShadowOverlayHelper.Options |
createShadowOverlayOptions() 创建ShadowOverlayHelper选项。 |
void |
dispatchItemSelectedListener(RowPresenter.ViewHolder holder, boolean selected) 使用 |
void |
initializeRowViewHolder(RowPresenter.ViewHolder holder) 在为行创建 |
void |
onBindRowViewHolder(RowPresenter.ViewHolder holder, Object item) 将给定的行对象绑定到给定的ViewHolder。 |
void |
onRowViewExpanded(RowPresenter.ViewHolder holder, boolean expanded) 在行视图的展开状态更改时调用。 |
void |
onRowViewSelected(RowPresenter.ViewHolder holder, boolean selected) 当给定的行视图改变选择状态时调用。 |
void |
onSelectLevelChanged(RowPresenter.ViewHolder holder) 将选择级别应用于标题,并在 |
void |
onUnbindRowViewHolder(RowPresenter.ViewHolder holder) 取消绑定给定的ViewHolder。 |
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
|
ListRowPresenter (int focusZoomFactor)
用给定的参数构造一个ListRowPresenter。
Parameters | |
---|---|
focusZoomFactor |
int : Controls the zoom factor used when an item view is focused. One of ZOOM_FACTOR_NONE , ZOOM_FACTOR_SMALL , ZOOM_FACTOR_XSMALL , ZOOM_FACTOR_MEDIUM , ZOOM_FACTOR_LARGE Dimming on focus defaults to disabled. |
ListRowPresenter (int focusZoomFactor, boolean useFocusDimmer)
用给定的参数构造一个ListRowPresenter。
Parameters | |
---|---|
focusZoomFactor |
int : Controls the zoom factor used when an item view is focused. One of ZOOM_FACTOR_NONE , ZOOM_FACTOR_SMALL , ZOOM_FACTOR_XSMALL , ZOOM_FACTOR_MEDIUM , ZOOM_FACTOR_LARGE |
useFocusDimmer |
boolean : determines if the FocusHighlighter will use the dimmer |
boolean areChildRoundedCornersEnabled ()
如果为此行的子项启用了圆角,则返回true。
Returns | |
---|---|
boolean |
void enableChildRoundedCorners (boolean enable)
在此行的子项上启用或禁用圆角。 在Android SDK上支持> = L.
Parameters | |
---|---|
enable |
boolean
|
void freeze (RowPresenter.ViewHolder holder, boolean freeze)
冻结/解冻行,通常在转换开始/结束时使用。 该方法由该片段调用,它不应该直接由应用程序调用它。
Parameters | |
---|---|
holder |
RowPresenter.ViewHolder
|
freeze |
boolean
|
int getExpandedRowHeight ()
返回由此Presenter创建的行的展开行高度。
Returns | |
---|---|
int |
int getFocusZoomFactor ()
返回用于焦点突出显示的缩放系数。
Returns | |
---|---|
int |
PresenterSelector getHoverCardPresenterSelector ()
返回用于在悬停卡片中显示选定对象的 PresenterSelector
。
Returns | |
---|---|
PresenterSelector |
int getRecycledPoolSize (Presenter presenter)
返回给定演示者的再循环池大小。
Parameters | |
---|---|
presenter |
Presenter
|
Returns | |
---|---|
int |
int getRowHeight ()
返回此Presenter创建的列表行的行高。
Returns | |
---|---|
int |
boolean getShadowEnabled ()
如果启用子阴影,则返回true。 这不仅是启用/禁用默认的影子实现,而且子类也必须尊重这个标志。
Returns | |
---|---|
boolean |
boolean isFocusDimmerUsed ()
如果聚焦调光器用于聚焦突出显示,则返回true; 否则为假。
Returns | |
---|---|
boolean |
boolean isKeepChildForeground ()
如果保持该行的子节点的前景,则返回true,否则返回false。 当ListRowPresenter在子项上应用叠加颜色时,它可能会将子项的前景变为可绘制。 如果应用程序将孩子的前景用于其他目的(如涟漪效应),则需要通知ListRowPresenter以保留孩子的前景。 默认值是true。
Returns | |
---|---|
boolean |
true if keeps foreground of child of this row, false otherwise. |
boolean isUsingDefaultListSelectEffect ()
返回true,以便将默认选择效果应用于HorizontalGridView
每个子HorizontalGridView
。 子类可能会返回false以禁用默认实现。
Returns | |
---|---|
boolean |
boolean isUsingDefaultSelectEffect ()
ListRowPresenter覆盖默认选择效果 RowPresenter
并返回false。
Returns | |
---|---|
boolean |
boolean isUsingDefaultShadow ()
如果SDK> = 18,则返回true,其中默认阴影应用于每个HorizontalGridView
子HorizontalGridView
。 子类可能会返回false来禁用。
Returns | |
---|---|
boolean |
boolean isUsingZOrder (Context context)
如果SDK> = L,则返回true,其中启用Z阴影,以便在水平列表的每个子项上启用Z顺序。 如果子类在isUsingDefaultShadow()中返回false,并且不在SDK> = L上使用Z-shadow,则应覆盖isUsingZOrder()返回false。
Parameters | |
---|---|
context |
Context
|
Returns | |
---|---|
boolean |
void setEntranceTransitionState (RowPresenter.ViewHolder holder, boolean afterEntrance)
更改视图的可见性。 入场过渡将针对改变视野的观点进行。 一个子类可以重写并从调用super.setEntranceTransitionState()开始。 该方法由该片段调用,不应该由应用程序直接调用。
Parameters | |
---|---|
holder |
RowPresenter.ViewHolder : The ViewHolder of the row. |
afterEntrance |
boolean : true if children of row participating in entrance transition should be set to visible, false otherwise. |
void setExpandedRowHeight (int rowHeight)
设置由此Presenter创建的行的展开行高度。 如果未设置,则展开的行具有与未展开的行相同的高度。
Parameters | |
---|---|
rowHeight |
int : The row height in to use when the row is expanded, in pixels, or WRAP_CONTENT, or 0 to use the default. |
void setHoverCardPresenterSelector (PresenterSelector selector)
设置用于在悬停卡片中显示选定对象的 PresenterSelector
。
Parameters | |
---|---|
selector |
PresenterSelector
|
void setKeepChildForeground (boolean keep)
当ListRowPresenter在子项上应用叠加颜色时,它可能会将子项的前景变为可绘制。 如果应用程序将孩子的前景用于其他目的(如涟漪效应),则需要通知ListRowPresenter以保留孩子的前景。 默认值是true。
Parameters | |
---|---|
keep |
boolean : true if keep foreground of child of this row, false ListRowPresenter might change the foreground of the child. |
void setNumRows (int numRows)
设置渲染项目列表的行数。 默认情况下,它被设置为1。
Parameters | |
---|---|
numRows |
int
|
void setRecycledPoolSize (Presenter presenter, int size)
为给定的演示者设置循环池大小。
Parameters | |
---|---|
presenter |
Presenter
|
size |
int
|
void setRowHeight (int rowHeight)
设置由此Presenter创建的行的行高。 调用此方法之前创建的行将不会更新。
Parameters | |
---|---|
rowHeight |
int : Row height in pixels, or WRAP_CONTENT, or 0 to use the default height. |
void setShadowEnabled (boolean enabled)
启用或禁用子阴影。 这不仅是启用/禁用默认的影子实现,而且子类也必须尊重这个标志。
Parameters | |
---|---|
enabled |
boolean
|
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. |
ShadowOverlayHelper.Options createShadowOverlayOptions ()
创建ShadowOverlayHelper选项。 子类可能会覆盖。 例如return new ShadowOverlayHelper.Options().roundedCornerRadius(10);
Returns | |
---|---|
ShadowOverlayHelper.Options |
The options to be used for shadow, overlay and rouded corner. |
void dispatchItemSelectedListener (RowPresenter.ViewHolder holder, boolean selected)
使用HorizontalGridView
中的当前选定项目分派项目选定事件。 该方法只能从onRowViewSelected()中调用。
Parameters | |
---|---|
holder |
RowPresenter.ViewHolder
|
selected |
boolean
|
void initializeRowViewHolder (RowPresenter.ViewHolder holder)
在为行创建RowPresenter.ViewHolder
之后调用。 子类可以重写此方法,并通过调用super.initializeRowViewHolder(ViewHolder)开始。
Parameters | |
---|---|
holder |
RowPresenter.ViewHolder : The ViewHolder to initialize for the Row. |
void onBindRowViewHolder (RowPresenter.ViewHolder holder, Object item)
将给定的行对象绑定到给定的ViewHolder。 派生类RowPresenter
覆盖onBindRowViewHolder(ViewHolder, Object)
必须通过超类的这个方法的实现来调用。
Parameters | |
---|---|
holder |
RowPresenter.ViewHolder
|
item |
Object
|
void onRowViewExpanded (RowPresenter.ViewHolder holder, boolean expanded)
在行视图的展开状态更改时调用。 子类可以重写此方法以响应行的扩展状态更改。 默认实现将隐藏/显示标题视图。 子类可以对行视图进行可视化更改,但不能在“行”视图上创建动画。
Parameters | |
---|---|
holder |
RowPresenter.ViewHolder
|
expanded |
boolean
|
void onRowViewSelected (RowPresenter.ViewHolder holder, boolean selected)
当给定的行视图改变选择状态时调用。 子类可以覆盖这个以响应行的选定状态更改。 子类可以对行视图进行视觉更改,但不能在“行”视图上创建动画。
Parameters | |
---|---|
holder |
RowPresenter.ViewHolder
|
selected |
boolean
|
void onSelectLevelChanged (RowPresenter.ViewHolder holder)
将选择级别应用于标题,并在 HorizontalGridView
每个子项上绘制默认颜色。
子类可能会覆盖此方法。 如果isUsingDefaultListSelectEffect()
为真,则子类需要调用super.onSelectLevelChanged()以应用标题选择级别,并可选地将默认选择级别应用于每个子视图HorizontalGridView
。 子类可以覆盖isUsingDefaultListSelectEffect()
以返回false并单独处理单个项目选择级别。
Parameters | |
---|---|
holder |
RowPresenter.ViewHolder
|
void onUnbindRowViewHolder (RowPresenter.ViewHolder holder)
取消绑定给定的ViewHolder。 派生类RowPresenter
覆盖onUnbindRowViewHolder(ViewHolder)
必须通过超类的这个方法的实现来调用。
Parameters | |
---|---|
holder |
RowPresenter.ViewHolder
|