package me.bell.downapp.adapter;
import android.content.Context;
import android.content.Intent;
import android.support.v4.content.ContextCompat;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;
import java.util.ArrayList;
import me.bell.downapp.activity.DetailActivity;
import me.bell.downapp.R;
import me.bell.downapp.bean.YYBData;
import me.bell.downapp.util.FileUtils;
import me.bell.downapp.util.ImageUtils;
/**
* @Info
* @Auth Bello
* @Time 2018-04-10 18:32:37
* @Ver
*/
public class AppAdapter extends BaseAdapter {
private Context mContext;
private ArrayList<YYBData> mListItems;
public AppAdapter(Context mContext, ArrayList<YYBData> mListItems) {
this.mContext = mContext;
this.mListItems = mListItems;
}
@Override
public int getCount() {
return mListItems.size();
}
@Override
public Object getItem(int position) {
return mListItems.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder;
if (convertView == null){
convertView = LayoutInflater.from(mContext).inflate(R.layout.item_app, null);
holder = new ViewHolder();
holder._appImage = (ImageView) convertView.findViewById(R.id.app_image);
holder._appName = (TextView) convertView.findViewById(R.id.app_name);
holder._appRating = (TextView) convertView.findViewById(R.id.app_rating);
holder._appSize = (TextView) convertView.findViewById(R.id.app_size);
holder._appDown = (Button) convertView.findViewById(R.id.app_down);
convertView.setTag(holder);
} else {
holder = (ViewHolder) convertView.getTag();
}
final YYBData data = mListItems.get(position);
ImageUtils.displayImg(mContext, holder._appImage, data.getIconUrl());
holder._appName.setText(data.getAppName());
holder._appSize.setText(FileUtils.convertFileSize(data.getFileSize()));
holder._appDown.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Toast.makeText(mContext, data.getApkUrl(), Toast.LENGTH_LONG).show();
}
});
long rating = data.getAverageRating();
if (rating<=1){
holder._appRating.setBackgroundColor(ContextCompat.getColor(mContext,R.color.rating1));
} else if (rating <=2){
holder._appRating.setBackgroundColor(ContextCompat.getColor(mContext,R.color.rating2));
} else if (rating <=3){
holder._appRating.setBackgroundColor(ContextCompat.getColor(mContext,R.color.rating3));
} else if (rating <=4){
holder._appRating.setBackgroundColor(ContextCompat.getColor(mContext,R.color.rating4));
} else {
holder._appRating.setBackgroundColor(ContextCompat.getColor(mContext,R.color.rating5));
}
holder._appRating.setText(data.getAverageRating()+"分");
convertView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(mContext, DetailActivity.class);
intent.putExtra("data", data);
mContext.startActivity(intent);
}
});
return convertView;
}
class ViewHolder {
ImageView _appImage;
TextView _appRating;
TextView _appName;
TextView _appSize;
Button _appDown;
}
}