blob: 813c1e78d44246697a05305ffb9538f5b39b9996 [file] [log] [blame]
/*
* Copyright (C) 2015 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
* in compliance with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software distributed under the License
* is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
* or implied. See the License for the specific language governing permissions and limitations under
* the License.
*/
package android.support.v17.leanback.supportleanbackshowcase.cards.presenters;
import android.content.Context;
import android.support.v17.leanback.supportleanbackshowcase.R;
import android.support.v17.leanback.supportleanbackshowcase.models.Card;
import android.support.v17.leanback.widget.ImageCardView;
import com.squareup.picasso.Picasso;
/**
* A very basic {@link ImageCardView} {@link android.support.v17.leanback.widget.Presenter}.You can
* pass a custom style for the ImageCardView in the constructor. Use the default constructor to
* create a Presenter with a default ImageCardView style.
*/
public class ImageCardViewPresenter extends AbstractCardPresenter<ImageCardView> {
private final int mCardStyleResId;
public ImageCardViewPresenter(Context context, int cardStyleResId) {
super(context);
mCardStyleResId = cardStyleResId;
}
public ImageCardViewPresenter(Context context) {
super(context);
mCardStyleResId = R.style.DefaultCardStyle;
}
@Override
protected ImageCardView onCreateView() {
return new ImageCardView(getContext(), mCardStyleResId);
}
@Override
public void onBindViewHolder(Card card, final ImageCardView cardView) {
cardView.setTag(card);
cardView.setTitleText(card.getTitle());
cardView.setContentText(card.getDescription());
if (card.getLocalImageResourceName() != null) {
int resourceId = getContext().getResources()
.getIdentifier(card.getLocalImageResourceName(),
"drawable", getContext().getPackageName());
Picasso.with(getContext()).load(resourceId).into(cardView.getMainImageView());
}
}
}