@Test public void testPlaybackControlsRowPresenter() { Context context = new ContextThemeWrapper(mContext, R.style.Theme_Leanback); Presenter detailsPresenter = new AbstractDetailsDescriptionPresenter() { @Override protected void onBindDescription(ViewHolder vh, Object item) { vh.getTitle().setText("The quick brown fox jumped over the lazy dog"); vh.getSubtitle().setText("Subtitle"); } }; PlaybackControlsRowPresenter controlsRowPresenter = new PlaybackControlsRowPresenter( detailsPresenter); PlaybackControlsRowPresenter.ViewHolder vh = (PlaybackControlsRowPresenter.ViewHolder) controlsRowPresenter.onCreateViewHolder(new FrameLayout(context)); Object item = new Object(); PlaybackControlsRow controlsRow = new PlaybackControlsRow(item); controlsRowPresenter.onBindRowViewHolder(vh, controlsRow); assertEquals("Controls card right panel layout height", vh.view.findViewById(R.id.controls_card_right_panel).getLayoutParams().height, LayoutParams.WRAP_CONTENT); assertEquals("Description dock layout height", vh.view.findViewById(R.id.description_dock).getLayoutParams().height, LayoutParams.WRAP_CONTENT); controlsRowPresenter.onUnbindRowViewHolder(vh); controlsRow.setImageBitmap( context, Bitmap.createBitmap(10, 10, Bitmap.Config.ARGB_8888)); controlsRowPresenter.onBindRowViewHolder(vh, controlsRow); AssertHelper.assertGreaterThan("Controls card right panel layout height", vh.view.findViewById(R.id.controls_card_right_panel).getLayoutParams().height, 0); assertEquals("Description dock layout height", vh.view.findViewById(R.id.description_dock).getLayoutParams().height, 0); controlsRowPresenter.onUnbindRowViewHolder(vh); }
public abstract ViewHolder onCreateViewHolder(ViewGroup parent);
Presenter implements FacetProvider { public abstract ViewHolder onCreateViewHolder(ViewGroup parent); }
Presenter implements FacetProvider { public abstract ViewHolder onCreateViewHolder(ViewGroup parent);  }
Presenter implements FacetProvider { public abstract ViewHolder onCreateViewHolder(ViewGroup parent);  abstract ViewHolder onCreateViewHolder(ViewGroup parent); abstract void onBindViewHolder(ViewHolder viewHolder, Object item); void onBindViewHolder(ViewHolder viewHolder, Object item, List<Object> payloads); abstract void onUnbindViewHolder(ViewHolder viewHolder); void onViewAttachedToWindow(ViewHolder holder); void onViewDetachedFromWindow(ViewHolder holder); void setOnClickListener(ViewHolder holder, View.OnClickListener listener); @Override final Object getFacet(Class<?> facetClass); final void setFacet(Class<?> facetClass, Object facetImpl); }
Presenter implements FacetProvider { public abstract ViewHolder onCreateViewHolder(ViewGroup parent);  abstract ViewHolder onCreateViewHolder(ViewGroup parent); abstract void onBindViewHolder(ViewHolder viewHolder, Object item); void onBindViewHolder(ViewHolder viewHolder, Object item, List<Object> payloads); abstract void onUnbindViewHolder(ViewHolder viewHolder); void onViewAttachedToWindow(ViewHolder holder); void onViewDetachedFromWindow(ViewHolder holder); void setOnClickListener(ViewHolder holder, View.OnClickListener listener); @Override final Object getFacet(Class<?> facetClass); final void setFacet(Class<?> facetClass, Object facetImpl);  }