Use CardPresenter in VerticalGridFragment.

Change-Id: I7e9fae64316e92b462f6117e73ba79aeb3d83d37
This commit is contained in:
Craig Stout
2014-06-02 15:18:28 -07:00
parent c06fc0073e
commit 534619712a

View File

@@ -61,23 +61,23 @@ public class VerticalGridFragment extends android.support.v17.leanback.app.Verti
gridPresenter.setNumberOfColumns(NUM_COLUMNS);
setGridPresenter(gridPresenter);
mAdapter = new ArrayObjectAdapter(new GridItemPresenter());
mAdapter = new ArrayObjectAdapter(new CardPresenter());
for (int i = 0; i < NUM_ITEMS; i++) {
mAdapter.add(new MyItem(i));
mAdapter.add(Integer.toString(i));
}
setAdapter(mAdapter);
setOnItemSelectedListener(new OnItemSelectedListener() {
@Override
public void onItemSelected(Object item, Row row) {
Log.i(TAG, "item selected: " + ((MyItem) item).id);
Log.i(TAG, "item selected: " + item);
}
});
setOnItemClickedListener(new OnItemClickedListener() {
@Override
public void onItemClicked(Object item, Row row) {
Log.i(TAG, "item clicked: " + ((MyItem) item).id);
Log.i(TAG, "item clicked: " + item);
}
});
setOnSearchClickedListener(new View.OnClickListener() {
@@ -88,32 +88,4 @@ public class VerticalGridFragment extends android.support.v17.leanback.app.Verti
}
});
}
private class GridItemPresenter extends Presenter {
public ViewHolder onCreateViewHolder(ViewGroup parent) {
TextView view = new TextView(parent.getContext());
// Choose a random height between HEIGHT and 1.5 * HEIGHT to
// demonstrate the staggered nature of the grid.
final int height = HEIGHT + mRandom.nextInt(HEIGHT / 2);
view.setLayoutParams(new ViewGroup.LayoutParams(200, height));
view.setFocusable(true);
view.setFocusableInTouchMode(true);
view.setBackgroundColor(Color.DKGRAY);
view.setGravity(Gravity.CENTER);
return new ViewHolder(view);
}
public void onBindViewHolder(ViewHolder viewHolder, Object item) {
((TextView) viewHolder.view).setText(Integer.toString(((MyItem) item).id));
}
public void onUnbindViewHolder(ViewHolder viewHolder) {}
}
static class MyItem {
int id;
MyItem(int id) {
this.id = id;
}
}
}