我想在选择项目时禁用BrowseFragment
项目的默认动画,即缩放动画和位置变化。我希望这些物品保持原样,并且在选择时不会改变它们的尺寸。
到目前为止,我在ListRowPresenter
对象上尝试了各种各样的操作,例如将OnItemViewSelectedListene
设置为null但没有成功效果。
我怎样才能做到这一点? (我正在使用leanback库的第26版)
答案 0 :(得分:0)
您可以通过将ZOOM_FACTOR_NONE
传递给ListRowPresenter的构造函数,将动画的缩放系数设置为none。
ListRowPresenter有一个构造函数来控制动画(focusZoom)。
ListRowPresenter(int focusZoomFactor)
使用给定参数构造ListRowPresenter。
参数
focusZoomFactor int:控制项目视图聚焦时使用的缩放系数。 ZOOM_FACTOR_NONE,ZOOM_FACTOR_SMALL,ZOOM_FACTOR_XSMALL,ZOOM_FACTOR_MEDIUM,ZOOM_FACTOR_LARGE之一焦点上的暗淡默认为禁用。
示例:
ArrayObjectAdapter adapter =
new ArrayObjectAdapter(new ListRowPresenter(ZOOM_FACTOR_NONE));
setAdapter(adapter);
ArrayObjectAdapter rowAdapter =
new ArrayObjectAdapter(new MyCardViewPresenter(getContext()));
HeaderItem header = new HeaderItem("Header Title");
ListRow row = new ListRow(header, rowAdapter);
for (Video video : videos) {
rowAdapter.add(video);
}
adapter.add(row);