SinglePresenterSelector.java revision 0f1fa0dfa946ddc8afb6af26a4dd1a4d01dca10f
113d1515a1edd63f26ad7f3c9c7471d0969900190Tim Kilbourn/*
213d1515a1edd63f26ad7f3c9c7471d0969900190Tim Kilbourn * Copyright (C) 2014 The Android Open Source Project
313d1515a1edd63f26ad7f3c9c7471d0969900190Tim Kilbourn *
413d1515a1edd63f26ad7f3c9c7471d0969900190Tim Kilbourn * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
513d1515a1edd63f26ad7f3c9c7471d0969900190Tim Kilbourn * in compliance with the License. You may obtain a copy of the License at
613d1515a1edd63f26ad7f3c9c7471d0969900190Tim Kilbourn *
713d1515a1edd63f26ad7f3c9c7471d0969900190Tim Kilbourn * http://www.apache.org/licenses/LICENSE-2.0
813d1515a1edd63f26ad7f3c9c7471d0969900190Tim Kilbourn *
913d1515a1edd63f26ad7f3c9c7471d0969900190Tim Kilbourn * Unless required by applicable law or agreed to in writing, software distributed under the License
1013d1515a1edd63f26ad7f3c9c7471d0969900190Tim Kilbourn * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
1113d1515a1edd63f26ad7f3c9c7471d0969900190Tim Kilbourn * or implied. See the License for the specific language governing permissions and limitations under
1213d1515a1edd63f26ad7f3c9c7471d0969900190Tim Kilbourn * the License.
1313d1515a1edd63f26ad7f3c9c7471d0969900190Tim Kilbourn */
1413d1515a1edd63f26ad7f3c9c7471d0969900190Tim Kilbournpackage android.support.v17.leanback.widget;
1513d1515a1edd63f26ad7f3c9c7471d0969900190Tim Kilbourn
1613d1515a1edd63f26ad7f3c9c7471d0969900190Tim Kilbourn/**
177888eca68714c6a753199b901e4a855d85d64ccbTim Kilbourn * A {@link PresenterSelector} that always returns the same {@link Presenter}.
187888eca68714c6a753199b901e4a855d85d64ccbTim Kilbourn * Useful for rows of items of the same type that are all rendered the same way.
1913d1515a1edd63f26ad7f3c9c7471d0969900190Tim Kilbourn */
200f1fa0dfa946ddc8afb6af26a4dd1a4d01dca10fDake Gupublic final class SinglePresenterSelector extends PresenterSelector {
2113d1515a1edd63f26ad7f3c9c7471d0969900190Tim Kilbourn
2213d1515a1edd63f26ad7f3c9c7471d0969900190Tim Kilbourn    private final Presenter mPresenter;
2313d1515a1edd63f26ad7f3c9c7471d0969900190Tim Kilbourn
2413d1515a1edd63f26ad7f3c9c7471d0969900190Tim Kilbourn    /**
2513d1515a1edd63f26ad7f3c9c7471d0969900190Tim Kilbourn     * @param presenter The Presenter to return for every item.
2613d1515a1edd63f26ad7f3c9c7471d0969900190Tim Kilbourn     */
2713d1515a1edd63f26ad7f3c9c7471d0969900190Tim Kilbourn    public SinglePresenterSelector(Presenter presenter) {
2813d1515a1edd63f26ad7f3c9c7471d0969900190Tim Kilbourn        mPresenter = presenter;
2913d1515a1edd63f26ad7f3c9c7471d0969900190Tim Kilbourn    }
3013d1515a1edd63f26ad7f3c9c7471d0969900190Tim Kilbourn
3113d1515a1edd63f26ad7f3c9c7471d0969900190Tim Kilbourn    @Override
3213d1515a1edd63f26ad7f3c9c7471d0969900190Tim Kilbourn    public Presenter getPresenter(Object item) {
3313d1515a1edd63f26ad7f3c9c7471d0969900190Tim Kilbourn        return mPresenter;
3413d1515a1edd63f26ad7f3c9c7471d0969900190Tim Kilbourn    }
3513d1515a1edd63f26ad7f3c9c7471d0969900190Tim Kilbourn}
36