I answered something similar in this question:
Dynamically add more cards in a list Row android TV leanback
I'll copy my answer from there. Hopefully this helps.
To add items to a presenter;
CardPresenter channelCardPresenter = new CardPresenter();
ArrayObjectAdapter channelRowAdapter = new ArrayObjectAdapter(channelCardPresenter);
channelRowAdapter.add(new Movie("Movie Title"));
HeaderItem header = new HeaderItem(0, "My Channels");
mRowsAdapter.add(new ListRow(header, channelRowAdapter));
Of course this may only work for the first time you're creating the UI. Future times may not do this. In my app, CumulusTV, I create a method that will be called each time I want to do a full redraw of the app:
public void refreshUI() {
prepareBackgroundManager();
setupUIElements();
loadRows(); //Generate and populate all the rows
setupEventListeners();
}