基于Android Tv制作一个Tv桌面(四)
这一章单独说一下CardPresenter.java这个文件,虽然前面的第三章也有提及,但是不够详细,我自己写的内容也还没有添加进去。到最后还是想想办法去优化一下代码吧。
package com.example.androidtv;
import android.content.pm.ResolveInfo;
import android.graphics.drawable.Drawable;
import androidx.leanback.widget.ImageCardView;
import androidx.leanback.widget.Presenter;
import androidx.core.content.ContextCompat;
import android.view.ViewGroup;
import android.widget.FrameLayout;
import android.widget.ImageView;
import com.bumptech.glide.Glide;
import java.util.List;
/*
* A CardPresenter is used to generate Views and bind Objects to them on demand.
* It contains an Image CardView
*/
public class CardPresenter extends Presenter {
private static final String TAG = "CardPresenter";
private static final int CARD_WIDTH = 350;
private static final int CARD_HEIGHT = 200;
private static int sSelectedBackgroundColor;
private static int sDefaultBackgroundColor;
private Drawable mDefaultCardImage;
private List<ResolveInfo> apps_list = MainActivity.apps;
private List<Drawable> apps_icon = MainActivity.icon;
private List<String> apps_name = MainActivity.name;