SettingsIconPresenter.java revision 23ace139d151e4b2dffc56bc8a434e96ecc6aa7a
123ace139d151e4b2dffc56bc8a434e96ecc6aa7asusnatapackage android.support.v17.leanback.supportleanbackshowcase.app.page;
223ace139d151e4b2dffc56bc8a434e96ecc6aa7asusnata
323ace139d151e4b2dffc56bc8a434e96ecc6aa7asusnataimport android.content.Context;
423ace139d151e4b2dffc56bc8a434e96ecc6aa7asusnataimport android.support.v17.leanback.supportleanbackshowcase.R;
523ace139d151e4b2dffc56bc8a434e96ecc6aa7asusnataimport android.support.v17.leanback.supportleanbackshowcase.cards.presenters.ImageCardViewPresenter;
623ace139d151e4b2dffc56bc8a434e96ecc6aa7asusnataimport android.support.v17.leanback.widget.ImageCardView;
723ace139d151e4b2dffc56bc8a434e96ecc6aa7asusnataimport android.view.View;
823ace139d151e4b2dffc56bc8a434e96ecc6aa7asusnataimport android.widget.ImageView;
923ace139d151e4b2dffc56bc8a434e96ecc6aa7asusnata
1023ace139d151e4b2dffc56bc8a434e96ecc6aa7asusnata/**
1123ace139d151e4b2dffc56bc8a434e96ecc6aa7asusnata * Simple presenter implementation to represent settings icon as cards.
1223ace139d151e4b2dffc56bc8a434e96ecc6aa7asusnata */
1323ace139d151e4b2dffc56bc8a434e96ecc6aa7asusnatapublic class SettingsIconPresenter extends ImageCardViewPresenter {
1423ace139d151e4b2dffc56bc8a434e96ecc6aa7asusnata
1523ace139d151e4b2dffc56bc8a434e96ecc6aa7asusnata    public SettingsIconPresenter(Context context) {
1623ace139d151e4b2dffc56bc8a434e96ecc6aa7asusnata        super(context, R.style.IconCardTheme);
1723ace139d151e4b2dffc56bc8a434e96ecc6aa7asusnata    }
1823ace139d151e4b2dffc56bc8a434e96ecc6aa7asusnata
1923ace139d151e4b2dffc56bc8a434e96ecc6aa7asusnata    @Override
2023ace139d151e4b2dffc56bc8a434e96ecc6aa7asusnata    protected ImageCardView onCreateView() {
2123ace139d151e4b2dffc56bc8a434e96ecc6aa7asusnata        final ImageCardView imageCardView = super.onCreateView();
2223ace139d151e4b2dffc56bc8a434e96ecc6aa7asusnata        imageCardView.setOnFocusChangeListener(new View.OnFocusChangeListener() {
2323ace139d151e4b2dffc56bc8a434e96ecc6aa7asusnata            @Override
2423ace139d151e4b2dffc56bc8a434e96ecc6aa7asusnata            public void onFocusChange(View v, boolean hasFocus) {
2523ace139d151e4b2dffc56bc8a434e96ecc6aa7asusnata                if (hasFocus) {
2623ace139d151e4b2dffc56bc8a434e96ecc6aa7asusnata                    setImageBackground(imageCardView, R.color.settings_card_background_focussed);
2723ace139d151e4b2dffc56bc8a434e96ecc6aa7asusnata                } else {
2823ace139d151e4b2dffc56bc8a434e96ecc6aa7asusnata                    setImageBackground(imageCardView, R.color.settings_card_background);
2923ace139d151e4b2dffc56bc8a434e96ecc6aa7asusnata                }
3023ace139d151e4b2dffc56bc8a434e96ecc6aa7asusnata            }
3123ace139d151e4b2dffc56bc8a434e96ecc6aa7asusnata        });
3223ace139d151e4b2dffc56bc8a434e96ecc6aa7asusnata        setImageBackground(imageCardView, R.color.settings_card_background);
3323ace139d151e4b2dffc56bc8a434e96ecc6aa7asusnata        return imageCardView;
3423ace139d151e4b2dffc56bc8a434e96ecc6aa7asusnata    }
3523ace139d151e4b2dffc56bc8a434e96ecc6aa7asusnata
3623ace139d151e4b2dffc56bc8a434e96ecc6aa7asusnata    private void setImageBackground(ImageCardView imageCardView, int colorId) {
3723ace139d151e4b2dffc56bc8a434e96ecc6aa7asusnata        imageCardView.setBackgroundColor(getContext().getResources().getColor(colorId));
3823ace139d151e4b2dffc56bc8a434e96ecc6aa7asusnata    }
3923ace139d151e4b2dffc56bc8a434e96ecc6aa7asusnata}
40