From 8039a1b2fbfa3471b6f726d3e839d7867c81a84f Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期六, 10 十月 2020 18:51:24 +0800 Subject: [PATCH] 资讯与小说集成 --- BuWanVideo/src/com/weikou/beibeivideo/ui/recommend/RecommendNewAdapter.java | 604 +++++++++++++++++++++++++++--------------------------- 1 files changed, 297 insertions(+), 307 deletions(-) diff --git a/BuWanVideo/src/com/weikou/beibeivideo/ui/recommend/RecommendNewAdapter.java b/BuWanVideo/src/com/weikou/beibeivideo/ui/recommend/RecommendNewAdapter.java index ee0a2c2..a0ebc43 100644 --- a/BuWanVideo/src/com/weikou/beibeivideo/ui/recommend/RecommendNewAdapter.java +++ b/BuWanVideo/src/com/weikou/beibeivideo/ui/recommend/RecommendNewAdapter.java @@ -2,65 +2,139 @@ import android.app.Activity; import android.content.Intent; -import android.graphics.Canvas; -import android.graphics.Rect; -import android.support.v4.view.ViewPager; -import android.support.v7.widget.GridLayoutManager; import android.support.v7.widget.RecyclerView; +import android.util.Log; import android.view.LayoutInflater; import android.view.View; import android.view.View.OnClickListener; import android.view.ViewGroup; -import android.view.ViewParent; import android.widget.FrameLayout; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.RelativeLayout; import android.widget.TextView; -import android.widget.VideoView; import com.bumptech.glide.Glide; -import com.bumptech.glide.load.engine.DiskCacheStrategy; -import com.bytedance.sdk.openadsdk.TTAdConstant; -import com.bytedance.sdk.openadsdk.TTFeedAd; -import com.lcjian.library.util.SystemCommon; -import com.lcjian.library.util.common.DimenUtils; +import com.bumptech.glide.request.RequestOptions; +import com.bytedance.sdk.openadsdk.TTAdDislike; +import com.google.gson.FieldNamingPolicy; +import com.google.gson.Gson; +import com.google.gson.GsonBuilder; import com.lcjian.library.util.common.StringUtils; -import com.lcjian.library.widget.RatioLayout; -import com.viewpagerindicator.LinePageIndicator; +import com.weikou.beibeivideo.R; import com.weikou.beibeivideo.entity.HomeType; import com.weikou.beibeivideo.entity.HomeVideo; import com.weikou.beibeivideo.entity.VideoInfo; +import com.weikou.beibeivideo.entity.VideoType; import com.weikou.beibeivideo.entity.ad.ExpressAdContainer; import com.weikou.beibeivideo.entity.recommend.HomeTypeContent; import com.weikou.beibeivideo.entity.recommend.RecommendContent; -import com.weikou.beibeivideo.test.MyViewPager; +import com.weikou.beibeivideo.entity.recommend.holder.RecommendVideoAdHolder; +import com.weikou.beibeivideo.entity.video.holder.HeaderViewHolder; +import com.weikou.beibeivideo.entity.video.holder.VideoHolder; +import com.weikou.beibeivideo.ui.common.VideosLiveActivity; +import com.weikou.beibeivideo.ui.discover.StarsActivity; import com.weikou.beibeivideo.ui.media.VideoDetailActivity; -import com.weikou.beibeivideo.util.ad.CSJAdUtil; +import com.weikou.beibeivideo.ui.video.VideoColumn2Adapter; +import com.weikou.beibeivideo.util.VideoUtil; +import com.weikou.beibeivideo.util.ad.AdUtil; import com.weikou.beibeivideo.util.ad.ExpressAdManager; -import com.yeshi.buwanshequ.R; import java.text.DecimalFormat; import java.util.ArrayList; +import java.util.Iterator; import java.util.List; +import java.util.TreeSet; public class RecommendNewAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> { - private Activity mContext; - List<RecommendContent> contentList; - private LayoutInflater inflater; + private final static String TAG = "RecommendNewAdapter"; - public RecommendNewAdapter(Activity context, List<RecommendContent> contentList) { + private Activity mContext; + List<Object> contentList; + private LayoutInflater inflater; + private TreeSet mADSet = new TreeSet(); + + public final int TYPE_HEADER = 10001; + + private View headerView; + + public void setHeaderView(View view) { + this.headerView = view; + } + + public RecommendNewAdapter(Activity context, List contentList) { this.mContext = context; this.contentList = contentList; inflater = LayoutInflater.from(mContext); } + /** + * 娣诲姞鏁版嵁椤� + * + * @param item + */ + public void addNormalItem(HomeType item) { + contentList.add(item); + } + + /** + * 鑾峰彇骞垮憡鏁伴噺 + * + * @return + */ + public int getAdCount() { + return mADSet.size(); + } + + /** + * 娣诲姞骞垮憡鍒版寚瀹氫綅缃� + * + * @param ad + * @param position + */ + public void addAdToPosition(ExpressAdContainer ad, int position) { + if (position >= 0 && position < contentList.size()) { + contentList.add(position, ad); + mADSet.add(position); + } + Log.i(TAG, "addAdToPosition"); + } + + public void addAd(ExpressAdContainer ad) { + contentList.add(ad); + Log.i(TAG, "addAd"); + } + + public void removeAd(ExpressAdContainer ad) { + if (mADSet != null) + for (Iterator<Integer> its = mADSet.iterator(); its.hasNext(); ) { + int p = its.next(); + if (p < contentList.size() && contentList.get(p) == ad) { + mADSet.remove(p); + contentList.remove(p); + notifyDataSetChanged(); + } + } + } + + + public void removeAllAd() { + if (contentList != null) + for (int i = 0; i < contentList.size(); i++) { + if (contentList.get(i) instanceof ExpressAdContainer) { + contentList.remove(i); + i--; + } + } + mADSet.clear(); + } + @Override public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { switch (viewType) { - case RecommendContent.TYPE_BANNER: - return new HomeBannerHolder(inflater.inflate(R.layout.recommend_top, parent, false)); + case TYPE_HEADER: + return new HeaderViewHolder(headerView); case RecommendContent.TYPE_HOMETYPE: return new HomeTypeHolder(inflater.inflate(R.layout.item_recommend_home_type, null, false), new RecyclerView.RecycledViewPool()); case RecommendContent.TYPE_AD: @@ -70,179 +144,132 @@ } - private Runnable autoPlayBanner = null; - - private synchronized void autoPlayBanner(final ViewPager viewPager) { - - if (autoPlayBanner == null) { - autoPlayBanner = new Runnable() { - @Override - public void run() { - if (contentList != null && contentList.size() > 0 && contentList.get(0).getType() == RecommendContent.TYPE_BANNER) - if (contentList.get(0).getHomeBannerList() == null || contentList.get(0).getHomeBannerList().size() <= 0) - return; - if (viewPager.getCurrentItem() >= contentList.get(0).getHomeBannerList().size() - 1) { - viewPager.setCurrentItem(0, true); - } else { - viewPager.setCurrentItem(viewPager.getCurrentItem() + 1, true); - } - autoPlayBanner(viewPager); - } - }; - viewPager.postDelayed(autoPlayBanner, 3000); - } else { - viewPager.removeCallbacks(autoPlayBanner); - viewPager.postDelayed(autoPlayBanner, 3000); - } - - - } - - RecyclerView.ItemDecoration itemDecoration = new RecyclerView.ItemDecoration() { - @Override - public void onDraw(Canvas c, RecyclerView parent, RecyclerView.State state) { - super.onDraw(c, parent, state); - } - - @Override - public void onDrawOver(Canvas c, RecyclerView parent, RecyclerView.State state) { - super.onDrawOver(c, parent, state); - } - - @Override - public void getItemOffsets(Rect outRect, View view, RecyclerView parent, RecyclerView.State state) { - super.getItemOffsets(outRect, view, parent, state); - int index = parent.getChildAdapterPosition(view); - int total = parent.getAdapter().getItemCount(); - if (index % 2 == 0) { - outRect.left = 0; //绗竴鍒楀乏杈硅创杈� - outRect.right = DimenUtils.dipToPixels(5, view.getContext()); - } else { - outRect.right = 0; //绗竴鍒楀乏杈硅创杈� - outRect.left = DimenUtils.dipToPixels(5, view.getContext()); - } - - if (index - 1 > 0) { - outRect.top = DimenUtils.dipToPixels(5, view.getContext()); - } else - outRect.top = 0; - - if (total % 2 == 0) { - if (total > 2 && (index < total - 2)) - outRect.bottom = DimenUtils.dipToPixels(5, view.getContext()); - else - outRect.bottom = 0; - } else { - if (total > 2 && (index < total - 1)) - outRect.bottom = DimenUtils.dipToPixels(5, view.getContext()); - else - outRect.bottom = 0; - } - -// if (parent.getChildAdapterPosition(view) >= 3) { -// outRect.top = SizeUtils.dp2px(mContext, 10); -// } else { -// outRect.top = 0; -// } - } - }; - @Override public void onBindViewHolder(RecyclerView.ViewHolder viewHolder, int i) { - final RecommendContent content = contentList.get(i); - if (viewHolder instanceof HomeBannerHolder) { - int width = (int) SystemCommon.getScreenWidth(mContext); - HomeBannerHolder holder = (HomeBannerHolder) viewHolder; - holder.vp_recommend.setAdapter(new RecommendTopAdapter(content.getHomeBannerList(), mContext, false)); - holder.indicator_recommend.setScreenWidth(width); - holder.indicator_recommend.setSelectedColor(holder.vp_recommend.getContext().getResources() - .getColor(R.color.yellow)); - holder.indicator_recommend.setUnselectedColor(0xbbADA9A7); - holder.indicator_recommend.setViewPager(holder.vp_recommend); - autoPlayBanner(holder.vp_recommend); - } else if (viewHolder instanceof HomeTypeHolder) { - HomeType homeType = content.getHomeType(); - HomeTypeHolder holder = (HomeTypeHolder) viewHolder; + if (viewHolder instanceof HeaderViewHolder) + return; + int p = i; + if (headerView != null) + p--; + + + if (viewHolder instanceof HomeTypeHolder) { + final HomeType homeType = (HomeType) contentList.get(p); + + final HomeTypeHolder holder = (HomeTypeHolder) viewHolder; if (homeType == null) { holder.view.setVisibility(View.GONE); return; } + if (homeType.getVideoInfoList() == null) { + homeType.setVideoInfoList(new ArrayList<VideoInfo>()); + } + homeType.getVideoInfoList().clear(); + if (homeType.getHomeVideoList() != null) + for (HomeVideo hv : homeType.getHomeVideoList()) { + homeType.getVideoInfoList().add(hv.getVideo()); + } + holder.view.setVisibility(View.VISIBLE); - if (holder.rv_content.getLayoutManager() == null || !(holder.rv_content.getLayoutManager() instanceof GridLayoutManager)) { - RecyclerView.LayoutManager layoutManager = new GridLayoutManager(mContext, 4); - holder.rv_content.setLayoutManager(layoutManager); - } - //缁熶竴鍒嗕负2鍒� - ((GridLayoutManager) holder.rv_content.getLayoutManager()).setSpanSizeLookup(new GridLayoutManager.SpanSizeLookup() { - @Override - public int getSpanSize(int position) { - return 2; - } - }); boolean isFirst = false; - for (RecommendContent content1 : contentList) - if (content1.getType() == RecommendContent.TYPE_HOMETYPE) { - if (content1.getHomeType().getId().equalsIgnoreCase(content.getHomeType().getId())) { + for (Object content1 : contentList) + if (content1 instanceof HomeType) { + if (content1 == homeType) { isFirst = true; + break; + } else { + isFirst = false; + break; } - break; } - HomeTypeContentAdapter adapter = new HomeTypeContentAdapter(mContext, homeType.getHomeVideoList(), isFirst ? true : false, 8); - holder.rv_content.setAdapter(adapter); + VideoColumn2Adapter adapter = null; - //璁剧疆闂磋窛 - holder.rv_content.removeItemDecoration(itemDecoration); - holder.rv_content.addItemDecoration(itemDecoration); + if (isFirst) {//绗竴鎺掍负灏忚棰� + adapter = new VideoColumn2Adapter(mContext, mContext, homeType.getVideoInfoList(), true, Integer.MAX_VALUE, null, new ExpressAdManager.IAdShowListener() { + @Override + public void show() { + holder.rv_content.scrollToPosition(0); + } + }); + adapter.initRecyclerViewDisplayWidthRow1(holder.rv_content); + } else { + adapter = new VideoColumn2Adapter(mContext, mContext, homeType.getVideoInfoList(), false, homeType.getColumns(), null); + if (homeType.getColumns() == 2) + adapter.initRecyclerViewDisplayWidthColumn2(holder.rv_content); + else if (homeType.getColumns() == 3) + adapter.initRecyclerViewDisplayWidthColumn3(holder.rv_content); + else + adapter.initRecyclerViewDisplayWidthRow1(holder.rv_content); + } + if (homeType.getVideoInfoList() != null && homeType.getVideoInfoList().size() > 0) + holder.rv_content.setAdapter(adapter); + Glide.with(mContext).load(homeType.getIcon()) - .diskCacheStrategy(DiskCacheStrategy.SOURCE).placeholder(R.drawable.ic_stars_collection).into(holder.tv_category_icon); + .apply(new RequestOptions().placeholder(R.drawable.ic_stars_collection)).into(holder.tv_category_icon); holder.tv_category_name.setText(homeType.getName()); if (Boolean.parseBoolean(homeType.getHasMore())) { holder.tv_more.setVisibility(View.VISIBLE); } else { holder.tv_more.setVisibility(View.GONE); } - } else if (viewHolder instanceof AdHolder) { - AdHolder holder = (AdHolder) viewHolder; - holder.fl_ad.removeAllViews(); - ExpressAdContainer ad = content.getAd(); + holder.tv_more + .setOnClickListener(new OnClickListener() { + + @Override + public void onClick(View v) { + Intent intent = null; + if (homeType.getId().equalsIgnoreCase("1111")) { + intent = new Intent(v.getContext(), + VideosLiveActivity.class); + intent.putExtra("home_type", homeType.getId()); + intent.putExtra("title", homeType.getName()); + v.getContext().startActivity(intent); + } else if (homeType.getId().equalsIgnoreCase("9998")) { + intent = new Intent(v.getContext(), StarsActivity.class); + v.getContext().startActivity(intent); + } else { + Gson gson = new GsonBuilder() + .setFieldNamingPolicy(FieldNamingPolicy.UPPER_CAMEL_CASE) + .create(); + VideoType type = gson.fromJson(homeType.getParams().replace( + "\\" + "\"", "\""), VideoType.class); + try { + intent = new Intent(v.getContext(), Class.forName(homeType.getActivity())); + intent.putExtra("video_type", type); + intent.putExtra("type_name", type.getName()); + intent.putExtra("isPush", false); + v.getContext().startActivity(intent); + } catch (ClassNotFoundException e) { + e.printStackTrace(); + } + } + } + }); + + + } else if (viewHolder instanceof AdHolder) { + final AdHolder holder = (AdHolder) viewHolder; + holder.fl_ad.removeAllViews(); + final ExpressAdContainer ad = (ExpressAdContainer) contentList.get(p); if (ad != null) { - holder.view.setVisibility(View.VISIBLE); - if (ad.getGdt() != null) { - ViewParent parent = ad.getGdt().getParent(); - if (parent != null) { - FrameLayout parentContainer = (FrameLayout) parent; - parentContainer.removeAllViews(); - } - ad.getGdt().render(); - holder.fl_ad.addView(ad.getGdt()); - } else if (ad.getCsj() != null) { - holder.fl_ad.addView(holder.csjAdHolder.view); - //濉厖骞垮憡鍐呭 - ArrayList<View> images = new ArrayList<>(); - if (ad.getCsj().getImageMode() == TTAdConstant.IMAGE_MODE_VIDEO) { - holder.csjAdHolder.iv_pic.setVisibility(View.GONE); - holder.csjAdHolder.vv_video.setVisibility(View.VISIBLE); - images.add(holder.csjAdHolder.vv_video); - } else { - holder.csjAdHolder.iv_pic.setVisibility(View.VISIBLE); - holder.csjAdHolder.vv_video.setVisibility(View.GONE); - images.add(holder.csjAdHolder.iv_pic); - } - CSJAdUtil.bindData(holder.csjAdHolder.view, holder.csjAdHolder.iv_close, holder.csjAdHolder.tv_title, images, ad.getCsj()); - } + holder.ll_container.setVisibility(View.VISIBLE); + ExpressAdManager.fillAd(ad, holder.fl_ad); } else { - holder.view.setVisibility(View.GONE); + holder.ll_container.setVisibility(View.GONE); } } } @Override public int getItemCount() { - return this.contentList.size(); + int count = this.contentList.size(); + if (headerView != null) + count++; + return count; } /** @@ -254,24 +281,17 @@ //鑾峰彇绫诲瀷 @Override public int getItemViewType(int position) { - return this.contentList.get(position).getType(); - } - - class HomeBannerHolder extends RecyclerView.ViewHolder { - MyViewPager vp_recommend; - LinearLayout ll_ad_containner; - RatioLayout rl_recommend_top; - LinePageIndicator indicator_recommend; - FrameLayout fl_ad; - - public HomeBannerHolder(View view) { - super(view); - vp_recommend = view.findViewById(R.id.vp_recommend); - ll_ad_containner = view.findViewById(R.id.ll_ad_containner); - rl_recommend_top = view.findViewById(R.id.rl_recommend_top); - indicator_recommend = view.findViewById(R.id.indicator_recommend); - fl_ad = view.findViewById(R.id.fl_ad); + if (position == 0) { + if (headerView != null) + return TYPE_HEADER; } + + if (headerView != null) + position--; + if (contentList.get(position) instanceof HomeType) + return RecommendContent.TYPE_HOMETYPE; + else + return RecommendContent.TYPE_AD; } class HomeTypeHolder extends RecyclerView.ViewHolder { @@ -303,15 +323,15 @@ class AdHolder extends RecyclerView.ViewHolder { FrameLayout fl_ad; - View view; - CSJAdHolder csjAdHolder; + RelativeLayout rl_title_item; + LinearLayout ll_container; public AdHolder(View view) { super(view); - this.view = view; - csjAdHolder = new CSJAdHolder(inflater.inflate(R.layout.item_ad_csj_list_column1, null)); + ll_container = view.findViewById(R.id.ll_container); fl_ad = view.findViewById(R.id.fl_ad); + rl_title_item = view.findViewById(R.id.rl_title_item); } } @@ -338,6 +358,23 @@ } + if (needAd) { + if (expressAdManager == null) + expressAdManager = new ExpressAdManager(AdUtil.getSmallExpressAdType(), mContext); + expressAdManager.loadRecommendSmallAd(new ExpressAdManager.IAdLoadListener() { + @Override + public void onSuccess(List<ExpressAdContainer> adList) { + if (adList != null && adList.size() > 0) { + if (contentList != null && contentList.size() > 0 && contentList.get(0).getType() == HomeTypeContent.TYPE_CONTENT) { + contentList.add(0, new HomeTypeContent(HomeTypeContent.TYPE_AD, adList.get(0))); + notifyDataSetChanged(); + } + } + } + }); + } + + this.maxItemNum = maxItemNum; } @@ -345,9 +382,9 @@ public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int type) { switch (type) { case HomeTypeContent.TYPE_AD: - return new HomeTypeAdHolder(inflater.inflate(R.layout.item_ad_list_small, parent, false)); + return new RecommendVideoAdHolder(inflater.inflate(R.layout.item_ad_list_small, parent, false)); case HomeTypeContent.TYPE_CONTENT: - return new HomeTypeContentHolder(inflater.inflate(R.layout.item_movie, parent, false)); + return new VideoHolder(inflater.inflate(R.layout.item_movie, parent, false)); } return null; } @@ -355,40 +392,40 @@ @Override public void onBindViewHolder(RecyclerView.ViewHolder viewHolder, int p) { final HomeTypeContent content = contentList.get(p); - if (viewHolder instanceof HomeTypeContentHolder) { - HomeTypeContentHolder holder = (HomeTypeContentHolder) viewHolder; + if (viewHolder instanceof VideoHolder) { + VideoHolder holder = (VideoHolder) viewHolder; final HomeVideo info = content.getHomeVideo(); //璁剧疆鍐呭 holder.ll_video_show.setVisibility(View.VISIBLE); if (StringUtils.isEmpty(info.getPicture())) { Glide.with(mContext).load(info.getVideo().getPicture()) - .placeholder(R.drawable.ic_default_cover) - .error(R.drawable.ic_default_cover) - .centerCrop().crossFade() - .diskCacheStrategy(DiskCacheStrategy.SOURCE) + .apply(new RequestOptions().centerCrop().placeholder(R.drawable.ic_default_cover).error(R.drawable.ic_default_cover)) .into(holder.iv_movie_cover); } else { try { Glide.with(mContext).load(info.getPicture()) - .placeholder(R.drawable.ic_default_cover) - .error(R.drawable.ic_default_cover) - .centerCrop().crossFade() - .diskCacheStrategy(DiskCacheStrategy.SOURCE) + .apply(new RequestOptions().centerCrop().placeholder(R.drawable.ic_default_cover).error(R.drawable.ic_default_cover)) .into(holder.iv_movie_cover); } catch (IllegalArgumentException e) { e.printStackTrace(); } } holder.tv_movie_title.setText(info.getVideo().getName()); - holder.tv_movie_rating.setText(StringUtils.isBlank(info + + String tag = StringUtils.isBlank(info .getVideo().getTag()) ? "" : info.getVideo() - .getTag()); + .getTag(); + holder.tv_movie_rating.setText(tag); + if (StringUtils.isBlank(tag)) { + holder.tv_movie_rating.setVisibility(View.GONE); + } else { + holder.tv_movie_rating.setVisibility(View.VISIBLE); + } + + DecimalFormat df = new DecimalFormat("###.0"); - holder.tv_movie_play_num.setText(StringUtils.isBlank(info - .getVideo().getWatchCount()) ? "0" : (Integer.parseInt(info - .getVideo().getWatchCount())) / 10000 > 0 ? df.format(Integer.parseInt(info - .getVideo().getWatchCount()) / 10000f) + "涓�" : info - .getVideo().getWatchCount()); + holder.tv_movie_play_num.setText(VideoUtil.getWatchCountShortName(info.getVideo().getWatchCount())); + holder.tv_movie_play_num.setVisibility(View.GONE); holder.tv_movie_comment_num.setText(StringUtils.isBlank(info.getVideo().getCommentCount()) ? "0" : info.getVideo().getCommentCount()); holder.ll_video_show .setOnClickListener(new OnClickListener() { @@ -398,54 +435,72 @@ myClick(info.getVideo(), v); } }); - } else if (viewHolder instanceof HomeTypeAdHolder) {//骞垮憡 - final HomeTypeAdHolder holder = (HomeTypeAdHolder) viewHolder; + } else if (viewHolder instanceof RecommendVideoAdHolder) {//骞垮憡 + final RecommendVideoAdHolder holder = (RecommendVideoAdHolder) viewHolder; holder.fl_container.removeAllViews(); + final ExpressAdContainer ad = content.getAd(); if (ad == null) {//骞垮憡涓虹┖ holder.view.setVisibility(View.GONE); - if (needAd) { - if (expressAdManager == null) - expressAdManager = new ExpressAdManager(ExpressAdManager.SOURCE_CSJ, mContext); - expressAdManager.loadRecommendSmallAd(new ExpressAdManager.IAdLoadListener() { - @Override - public void onSuccess(List<ExpressAdContainer> adList) { - if (adList != null && adList.size() > 0) { - if (contentList != null && contentList.size() > 0 && contentList.get(0).getType() == HomeTypeContent.TYPE_CONTENT) { - contentList.add(0,new HomeTypeContent(HomeTypeContent.TYPE_AD, adList.get(0))); - notifyDataSetChanged(); - } - } - } - }); - } } else { holder.view.setVisibility(View.VISIBLE); if (ad.getGdt() != null) { - ViewParent parent = ad.getGdt().getParent(); - if (parent != null) { - FrameLayout parentContainer = (FrameLayout) parent; - parentContainer.removeAllViews(); - } + holder.rl_container.setRatio(0.88f); + holder.tv_movie_title.setVisibility(View.GONE); +// ad.getGdt().setAdEventListener(new AdEventListener() { +// @Override +// public void onClick() { +// +// } +// +// @Override +// public void onExposed() { +// +// } +// +// @Override +// public void onRenderSuccess() { +// holder.fl_container.addView(ad.getGdt().getAdView()); +// } +// +// @Override +// public void onRenderFail() { +// +// } +// +// @Override +// public void onAdClosed() { +// ad.getGdt().destroy(); +// contentList.remove(content); +// notifyDataSetChanged(); +// } +// }); ad.getGdt().render(); - holder.tv_movie_play_num.setText("112"); - holder.tv_movie_title.setText(ad.getGdt().getBoundData().getTitle()); holder.fl_container.addView(ad.getGdt()); + holder.tv_movie_play_num.setText("112"); } else if (ad.getCsj() != null) { - holder.fl_container.addView(holder.adHolder.view); - //濉厖骞垮憡鍐呭 - ArrayList<View> images = new ArrayList<>(); - if (ad.getCsj().getImageMode() == TTAdConstant.IMAGE_MODE_VIDEO) { - holder.adHolder.iv_pic.setVisibility(View.GONE); - holder.adHolder.vv_video.setVisibility(View.VISIBLE); - images.add(holder.adHolder.vv_video); - } else { - holder.adHolder.iv_pic.setVisibility(View.VISIBLE); - holder.adHolder.vv_video.setVisibility(View.GONE); - images.add(holder.adHolder.iv_pic); - } - CSJAdUtil.bindData(holder.adHolder.view, holder.adHolder.iv_close, holder.adHolder.tv_title, images, ad.getCsj()); - holder.tv_movie_title.setText(ad.getCsj().getTitle()); + holder.rl_container.setRatio(0.88f); + holder.tv_movie_title.setVisibility(View.GONE); + ad.getCsj().setDislikeCallback(mContext, new TTAdDislike.DislikeInteractionCallback() { + + @Override + public void onSelected(int i, String s) { + contentList.remove(content); + notifyDataSetChanged(); + } + + @Override + public void onCancel() { + + } + + @Override + public void onRefuse() { + + } + }); + ad.getCsj().render(); + holder.fl_container.addView(ad.getCsj().getExpressAdView()); } } } @@ -470,71 +525,6 @@ Intent intent = new Intent(v.getContext(), VideoDetailActivity.class); intent.putExtra("video_info", info); v.getContext().startActivity(intent); - } - - } - - - class HomeTypeContentHolder extends RecyclerView.ViewHolder { - LinearLayout ll_video_show; - ImageView iv_movie_cover; - ImageView iv_spread; - TextView tv_movie_rating; - ImageView iv_ad_logo; - TextView tv_movie_play_num; - TextView tv_movie_comment_num; - TextView tv_movie_title; - - public HomeTypeContentHolder(View view) { - super(view); - ll_video_show = view.findViewById(R.id.ll_video_show); - iv_movie_cover = view.findViewById(R.id.iv_movie_cover); - iv_spread = view.findViewById(R.id.iv_spread); - tv_movie_rating = view.findViewById(R.id.tv_movie_rating); - iv_ad_logo = view.findViewById(R.id.iv_ad_logo); - tv_movie_play_num = view.findViewById(R.id.tv_movie_play_num); - tv_movie_comment_num = view.findViewById(R.id.tv_movie_comment_num); - tv_movie_title = view.findViewById(R.id.tv_movie_title); - } - } - - class HomeTypeAdHolder extends RecyclerView.ViewHolder { - - View view; - FrameLayout fl_container; - TextView tv_movie_title; - TextView tv_movie_play_num; - CSJAdHolder adHolder; - - public HomeTypeAdHolder(View view) { - super(view); - this.view = view; - fl_container = view.findViewById(R.id.fl_container); - tv_movie_title = view.findViewById(R.id.tv_movie_title); - tv_movie_play_num = view.findViewById(R.id.tv_movie_play_num); -// adHolder = new CSJAdHolder(inflater.inflate(R.layout.item_ad_csj_list_column2, null)); - } - - } - - - class CSJAdHolder extends RecyclerView.ViewHolder { - - ImageView iv_pic; - VideoView vv_video; - ImageView iv_logo; - TextView tv_title; - ImageView iv_close; - View view; - - public CSJAdHolder(View view) { - super(view); - this.view = view; - iv_pic = view.findViewById(R.id.iv_pic); - vv_video = view.findViewById(R.id.vv_video); - iv_logo = view.findViewById(R.id.iv_logo); - tv_title = view.findViewById(R.id.tv_title); - iv_close = view.findViewById(R.id.iv_close); } } -- Gitblit v1.8.0