admin
2020-08-08 3945f9a2c70335958c64c73894e3a1a14a7113b3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
package com.weikou.beibeivideo.ui.discover;
 
import android.app.Dialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.FrameLayout;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;
 
import com.bumptech.glide.Glide;
import com.bumptech.glide.RequestManager;
import com.lcjian.library.util.common.StringUtils;
import com.weikou.beibeivideo.entity.VideoInfo;
import com.weikou.beibeivideo.ui.media.VideoDetailActivity;
import com.weikou.beibeivideo.util.AdPromptDialog;
import com.weikou.beibeivideo.util.BeibeiConstant;
import com.yeshi.buwanshequ.R;
 
import java.text.DecimalFormat;
import java.util.List;
 
public class StarWorksAdapter extends BaseAdapter {
    private Context mContext;
    private List<VideoInfo> mList;
 
    private LayoutInflater inflater;
 
    public StarWorksAdapter(List<VideoInfo> list, Context context) {
        super();
        this.mContext = context;
        this.mList = list;
    }
 
    @Override
    public int getCount() {
        return mList == null ? 0 : mList.size();
    }
 
    @Override
    public Object getItem(int position) {
        return mList.get(position);
    }
 
    @Override
    public long getItemId(int position) {
        return position;
    }
 
    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        Holder holder;
        inflater = LayoutInflater.from(parent.getContext());
        if (convertView == null) {
            holder = new Holder();
            convertView = inflater.inflate(R.layout.item_star_work, null);
            holder.iv_moive_img = convertView.findViewById(R.id.iv_moive_img);
            holder.tv_moive_name = convertView.findViewById(R.id.tv_moive_name);
            holder.tv_moive_score = convertView.findViewById(R.id.tv_moive_score);
            holder.tv_moive_play_num = convertView.findViewById(R.id.tv_moive_play_num);
            holder.tv_moive_comment_num = convertView.findViewById(R.id.tv_moive_comment_num);
            holder.fl_ad = convertView.findViewById(R.id.fl_ad);
            holder.fl_content = convertView.findViewById(R.id.fl_content);
            convertView.setTag(holder);
        } else {
            holder = (Holder) convertView.getTag();
        }
        final VideoInfo info = (VideoInfo) getItem(position);
        holder.fl_ad.setVisibility(info.getAdView() == null ? View.GONE : View.VISIBLE);
        holder.iv_moive_img.setVisibility(info.getAdView() == null ? View.VISIBLE : View.GONE);
        holder.fl_content.setVisibility(info.getAdView() == null ? View.VISIBLE : View.GONE);
        if (info.getAdView() == null) {
            try {
                Glide.with(mContext).load(info.getPicture()).placeholder(R.drawable.ic_default_cover).into(holder.iv_moive_img);
            } catch (IllegalArgumentException e) {
                e.printStackTrace();
            }
            holder.tv_moive_name.setText(info.getName() + "");
            holder.tv_moive_score.setText(StringUtils.isEmpty(info.getTag()) ? "" : info.getTag());
//        holder.tv_moive_play_num.setText(info.getWatchCount());
            DecimalFormat df = new DecimalFormat("###.0");
            holder.tv_moive_play_num.setText(StringUtils.isBlank(info
                    .getWatchCount()) ? "0" : (Integer.parseInt(info
                    .getWatchCount())) / 10000 > 0 ? df.format(Integer.parseInt(info
                    .getWatchCount()) / 10000f) + "万" : info
                    .getWatchCount() + "");
            holder.tv_moive_comment_num.setText(info.getCommentCount());
            convertView.setOnClickListener(new OnClickListener() {
                @Override
                public void onClick(final View v) {
                    myClick(info, v);
                }
            });
        } else {
            info.getAdView().render();
            FrameLayout adParent = (FrameLayout) info.getAdView().getParent();
            if (adParent != null) {
                adParent.removeAllViews();
            }
            holder.fl_ad.addView(info.getAdView());
        }
 
        return convertView;
    }
 
    private void myClick(VideoInfo videoInfo, View v) {
        Intent intent = new Intent(v.getContext(), VideoDetailActivity.class);
        intent.putExtra("video_info", videoInfo);
        v.getContext().startActivity(intent);
    }
 
    class Holder {
        ImageView iv_moive_img;
        TextView tv_moive_name;
        TextView tv_moive_score;
        TextView tv_moive_play_num;
        TextView tv_moive_comment_num;
        FrameLayout fl_ad, fl_content;
    }
}