package com.weikou.beibeivideo.ui.discover;
|
|
import android.content.Context;
|
import android.content.Intent;
|
import android.content.SharedPreferences;
|
import android.os.Bundle;
|
import androidx.viewpager.widget.PagerAdapter;
|
import android.util.TypedValue;
|
import android.view.LayoutInflater;
|
import android.view.View;
|
import android.view.View.OnClickListener;
|
import android.view.ViewGroup;
|
import android.widget.ImageView;
|
import android.widget.TextView;
|
|
import com.bumptech.glide.Glide;
|
import com.lcjian.library.widget.IsPad;
|
import com.loopj.android.http.JsonHttpResponseHandler;
|
import com.weikou.beibeivideo.BeibeiVideoAPI;
|
import com.weikou.beibeivideo.entity.CommonAd;
|
import com.weikou.beibeivideo.entity.Special;
|
import com.weikou.beibeivideo.service.DownLoadFileService;
|
import com.weikou.beibeivideo.ui.category.SpecificDetailActivity;
|
import com.weikou.beibeivideo.ui.mine.BrowserActivity;
|
import com.weikou.beibeivideo.R;
|
|
import java.util.List;
|
|
public class DiscoverTopAdapter extends PagerAdapter {
|
|
private List<Special> mHomeAds;
|
|
private Context mContext;
|
|
public DiscoverTopAdapter(List<Special> homeAds, Context context) {
|
super();
|
this.mContext = context;
|
this.mHomeAds = homeAds;
|
}
|
|
@Override
|
public int getCount() {
|
return mHomeAds == null ? 0 : mHomeAds.size();
|
}
|
|
@Override
|
public Object instantiateItem(ViewGroup container, final int position) {
|
View view = LayoutInflater.from(container.getContext()).inflate(R.layout.item_fragment_discover_top, null);
|
ImageView iv = (ImageView) view.findViewById(R.id.iv_top_banner);
|
TextView tv_des = (TextView) view.findViewById(R.id.tv_banner_descrip);
|
if (IsPad.isPad(tv_des.getContext())) {
|
tv_des.setTextSize(TypedValue.COMPLEX_UNIT_SP, 25);
|
}
|
try {
|
Glide.with(mContext).load(mHomeAds.get(position).getPicture()).placeholder(R.drawable.ic_default_cover)
|
.error(R.drawable.ic_default_cover)
|
.into(iv);
|
} catch (IllegalArgumentException e) {
|
e.printStackTrace();
|
}
|
tv_des.setText(mHomeAds.get(position).getIntroduction() + "");
|
iv.setOnClickListener(new OnClickListener() {
|
@Override
|
public void onClick(View v) {
|
if (mHomeAds.get(position).getCommonAd() != null) {//跳转广告
|
CommonAd info = mHomeAds.get(position).getCommonAd();
|
if (info.getLinkType() == 1) {//下载类
|
try {
|
Intent intent = new Intent(v.getContext(),
|
DownLoadFileService.class);
|
v.getContext().stopService(intent);
|
} catch (Exception e) {
|
}
|
try {
|
Bundle bundle = new Bundle();
|
bundle.putString("downloadurl",
|
info.getLink());
|
Intent intent = new Intent(v.getContext(),
|
DownLoadFileService.class);
|
intent.putExtras(bundle);
|
v.getContext().startService(intent);
|
} catch (Exception e) {
|
}
|
} else {//网页类
|
Intent intent = new Intent(v.getContext(), BrowserActivity.class);
|
intent.putExtra("url", info.getLink());
|
v.getContext().startActivity(intent);
|
}
|
SharedPreferences sp = v.getContext().getSharedPreferences("user", Context.MODE_PRIVATE);
|
String uid = sp.getString("uid", "");
|
BeibeiVideoAPI.reportCommonAd(v.getContext(), uid, info.getPid(), info.getId(), new JsonHttpResponseHandler() {
|
});
|
} else {//跳转专题详情
|
Intent intent = new Intent(v.getContext(), SpecificDetailActivity.class);
|
intent.putExtra("id", mHomeAds.get(position).getId());
|
v.getContext().startActivity(intent);
|
}
|
}
|
});
|
|
container.addView(view);
|
return view;
|
}
|
|
@Override
|
public void destroyItem(ViewGroup container, int position, Object object) {
|
container.removeView((View) object);
|
}
|
|
@Override
|
public boolean isViewFromObject(View view, Object object) {
|
return view == object;
|
}
|
|
@Override
|
public CharSequence getPageTitle(int position) {
|
if (mHomeAds.size() == 0)
|
return "";
|
else
|
return mHomeAds.get(position).getName();
|
}
|
}
|