Search code examples
androidintandroid-tvsmart-tv

customizable buttons, It is correct or is there a better option?


I want to customize the buttons, in place to appear "title0, TITLE1", etc. I want to put something of my own, LocalVideo, listvideo .. etc. The only solution I found it so. but I do not think that is correct. Must be something different for sure.

code stock:

                /* CardPresenter */
    HeaderItem cardPresenterHeader = new HeaderItem(1, "CardPresenter");
    CardPresenter cardPresenter = new CardPresenter();
    ArrayObjectAdapter cardRowAdapter = new ArrayObjectAdapter(cardPresenter);

    for(int i=0; i<3; i++) {
        Movie movie = new Movie();
        if(i%3 == 0) {
            movie.setCardImageUrl("http://heimkehrend.raindrop.jp/kl-hacker/wp-content/uploads/2014/08/DSC02580.jpg");
        } else if (i%3 == 1) {
            movie.setCardImageUrl("http://heimkehrend.raindrop.jp/kl-hacker/wp-content/uploads/2014/08/DSC02630.jpg");
        } else {
            movie.setCardImageUrl("http://heimkehrend.raindrop.jp/kl-hacker/wp-content/uploads/2014/08/DSC02529.jpg");
        }
        movie.setTitle("title" + i);
        movie.setStudio("studio" + i);
        cardRowAdapter.add(movie);
    }

    mRowsAdapter.add(new ListRow(cardPresenterHeader, cardRowAdapter));

code changed:

                /* CardPresenter */
    HeaderItem cardPresenterHeader = new HeaderItem(1, "CardPresenter");
    CardPresenter cardPresenter = new CardPresenter();
    ArrayObjectAdapter cardRowAdapter = new ArrayObjectAdapter(cardPresenter);

 for(int i=0; i<1; i++) {
        Movie movie = new Movie();
        if(i%3 == 0) {
            movie.setCardImageUrl("http://heimkehrend.raindrop.jp/kl-hacker/wp-content/uploads/2014/08/DSC02580.jpg");
        }
        movie.setTitle("Videoview");
        movie.setStudio("Video local video");
        cardRowAdapter.add(movie);
    }

    for(int i=0; i<1; i++) {
        Movie movie = new Movie();
        if(i%3 == 0) {
            movie.setCardImageUrl("http://heimkehrend.raindrop.jp/kl-hacker/wp-content/uploads/2014/08/DSC02580.jpg");
        }
        movie.setTitle("Listview");
        movie.setStudio("Listview local video");
        cardRowAdapter.add(movie);
    }
    mRowsAdapter.add(new ListRow(cardPresenterHeader, cardRowAdapter));

Solution

  • If you are referring this site, please ask me.

    Is this what you want?

        /* CardPresenter */
        HeaderItem cardPresenterHeader = new HeaderItem(1, "CardPresenter");
        CardPresenter cardPresenter = new CardPresenter();
        ArrayObjectAdapter cardRowAdapter = new ArrayObjectAdapter(cardPresenter);
    
        // Create movie1 object
        Movie movie1 = new Movie();
        movie1.setCardImageUrl("http://heimkehrend.raindrop.jp/kl-hacker/wp-content/uploads/2014/08/DSC02580.jpg");
        movie1.setTitle("Videoview");
        movie1.setStudio("Video local video");
    
        // Create movie2 object
        Movie movie2 = new Movie();
        movie2.setCardImageUrl("http://heimkehrend.raindrop.jp/kl-hacker/wp-content/uploads/2014/08/DSC02580.jpg");
        movie2.setTitle("Listview");
        movie2.setStudio("Listview local video");
    
        // put movie1 and movie2 into cardRowAdapter
        cardRowAdapter.add(movie1);
        cardRowAdapter.add(movie2);
    
        // show cardRowAdapter in listrow
        mRowsAdapter.add(new ListRow(cardPresenterHeader, cardRowAdapter));