BrowseFragment.java revision f519df88d6a69e517e08b844ffadd722b9ceb9ab
1/*
2 * Copyright (C) 2014 The Android Open Source Project
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
5 * in compliance with the License. You may obtain a copy of the License at
6 *
7 * http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software distributed under the License
10 * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
11 * or implied. See the License for the specific language governing permissions and limitations under
12 * the License.
13 */
14package com.example.android.leanback;
15
16import android.os.Bundle;
17import android.support.v17.leanback.widget.ArrayObjectAdapter;
18import android.support.v17.leanback.widget.HeaderItem;
19import android.support.v17.leanback.widget.ListRow;
20import android.support.v17.leanback.widget.ListRowPresenter;
21import android.util.Log;
22
23public class BrowseFragment extends android.support.v17.leanback.app.BrowseFragment {
24    private static final String TAG = "leanback.BrowseFragment";
25
26    private static final int NUM_ROWS = 3;
27    private ArrayObjectAdapter mRowsAdapter;
28
29    @Override
30    public void onCreate(Bundle savedInstanceState) {
31        Log.i(TAG, "onCreate");
32        super.onCreate(savedInstanceState);
33
34        Params p = new Params();
35        p.setBadgeImage(getActivity().getResources().getDrawable(R.drawable.ic_title));
36        p.setTitle("Leanback Sample App");
37        p.setHeadersState(HEADERS_ENABLED);
38        setBrowseParams(p);
39
40        setupRows();
41    }
42
43    private void setupRows() {
44        mRowsAdapter = new ArrayObjectAdapter(new ListRowPresenter());
45
46
47        for (int i = 0; i < NUM_ROWS; ++i) {
48            ArrayObjectAdapter listRowAdapter = new ArrayObjectAdapter(new StringPresenter());
49            listRowAdapter.add("Hello world");
50            listRowAdapter.add("This is a test");
51            HeaderItem header = new HeaderItem(i, "Row " + i, null);
52            mRowsAdapter.add(new ListRow(header, listRowAdapter));
53        }
54
55        setAdapter(mRowsAdapter);
56    }
57}
58