private RecyclerView recycler;
private String murl="http://huixinguiyu.cn/Assets/js/competitive.js";
private List<MyBean.DataBean.ObjectsBean> beanList;
private Handler handler=new Handler(){
@Override
public void handleMessage(Message msg) {
String str = (String) msg.obj;
Gson gson=new Gson();
MyBean myBean = gson.fromJson(str, MyBean.class);
beanList = myBean.getData().getObjects();
MyAdapter adapter=new MyAdapter(MainActivity.this,beanList);
recycler.setAdapter(adapter);
adapter.setOnItemClickListener(new MyAdapter.OnItemClickListener() {
@Override
public void onItemClick(int pos) {
Intent intent=new Intent(MainActivity.this,InFoActivity.class);
intent.putExtra("111",beanList.get(pos).getGmall_product().getTitle());
intent.putExtra("222",beanList.get(pos).getGmall_product().getPic_url());
startActivity(intent);
}
});
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initView();
initData();
}
private void initData() {
new Thread(new Runnable() {
@Override
public void run() {
try {
OkHttpClient okhttp=new OkHttpClient();
Request request=new Request.Builder().url(murl).build();
Response response = okhttp.newCall(request).execute();
String string = response.body().string();
Message message=new Message();
message.obj=string;
handler.sendMessage(message);
} catch (IOException e) {
e.printStackTrace();
}
}
}).start();
}
private void initView() {
toolbar = (Toolbar) findViewById(R.id.toolbar);
toolbar.setTitle("标题");
setSupportActionBar(toolbar);
toolbar.setNavigationIcon(R.mipmap.back);
toolbar.setNavigationOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
finish();
}
});
recycler = (RecyclerView) findViewById(R.id.recycler);
LinearLayoutManager manager = new LinearLayoutManager(this, LinearLayoutManager.VERTICAL, false);
recycler.setLayoutManager(manager);
}
}
public class MyAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> {
private List<MyBean.DataBean.ObjectsBean> list;
private Context context;
private final static int ITEM_ONE = 1;
private final static int ITEM_TWO = 2;
private OnItemClickListener listener;
public MyAdapter(Context context, List<MyBean.DataBean.ObjectsBean> list) {
this.context = context;
this.list = list;
}
@Override
public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
LayoutInflater inflater = LayoutInflater.from(context);
View view;
RecyclerView.ViewHolder holder;
if (viewType == ITEM_ONE) {
view = inflater.inflate(R.layout.view_moban_one, parent, false);
holder = new HolderOne(view);
} else {
view = inflater.inflate(R.layout.view_moban_two, parent, false);
holder = new HolderTwo(view);
}
return holder;
}
@Override
public void onBindViewHolder(RecyclerView.ViewHolder holder, final int position) {
MyBean.DataBean.ObjectsBean bean = list.get(position);
if (holder instanceof HolderOne) {
((HolderOne) holder).tvtwo.setText(bean.getGmall_product().getTitle());
Picasso.with(context).load(bean.getGmall_product().getPic_url()).into(((HolderOne) holder).imageone);
((HolderOne) holder).relativeone.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
listener.onItemClick(position);
}
});
} else {
((HolderTwo) holder).textview.setText(bean.getGmall_product().getTitle());
Picasso.with(context).load(bean.getGmall_product().getPic_url()).into(((HolderTwo) holder).imagetwo);
Picasso.with(context).load(bean.getGmall_product().getPic_url()).into(((HolderTwo) holder).imagethree);
Picasso.with(context).load(bean.getGmall_product().getPic_url()).into(((HolderTwo) holder).imagefour);
Picasso.with(context).load(bean.getGmall_product().getPic_url()).into(((HolderTwo) holder).imagefive);
((HolderTwo) holder).relativetwo.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
listener.onItemClick(position);
}
});
}
}
@Override
public int getItemCount() {
return list.size();
}
@Override
public int getItemViewType(int position) {
if (position % 2 == 0) {
return ITEM_ONE;
} else {
return ITEM_TWO;
}
}
class HolderOne extends RecyclerView.ViewHolder {
private RelativeLayout relativeone;
private TextView tvtwo;
private ImageView imageone;
public HolderOne(View itemView) {
super(itemView);
imageone = (ImageView) itemView.findViewById(R.id.imageone);
tvtwo = (TextView) itemView.findViewById(R.id.tvtwo);
relativeone = (RelativeLayout) itemView.findViewById(R.id.relativeone);
}
}
class HolderTwo extends RecyclerView.ViewHolder {
private RelativeLayout relativetwo;
private TextView textview;
private ImageView imagefive;
private ImageView imagetwo;
private ImageView imagethree;
private ImageView imagefour;
public HolderTwo(View itemView) {
super(itemView);
imagetwo = (ImageView) itemView.findViewById(R.id.imagetwo);
imagethree = (ImageView) itemView.findViewById(R.id.imagethree);
imagefour = (ImageView) itemView.findViewById(R.id.imagefour);
imagefive = (ImageView) itemView.findViewById(R.id.imagefive);
textview = (TextView) itemView.findViewById(R.id.textView);
relativetwo = (RelativeLayout) itemView.findViewById(R.id.relativetwo);
}
}
public interface OnItemClickListener {
void onItemClick(int pos);
}
public void setOnItemClickListener(OnItemClickListener listener) {
this.listener = listener;
}
}