我一直在寻找答案,但没有人回答我的问题。我有数据存储在parse.com上。我正在尝试检索图像和字符串并将其放在列表视图中。我有一个适配器,我一直用来抓取文本,但不知道如何处理图像。有一条线特别需要帮助。
public class AppetizerAdapter extends ArrayAdapter {
protected Context mContext;
protected List mAppetizer;
public AppetizerAdapter(Context context, List appetizer) {
super(context, R.layout.custom_appetizers, appetizer);
mContext = context;
mAppetizer = appetizer;
}
// inflates each row of the app
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
// initialize view holder
ViewHolder holder;
if (convertView == null) { // If no items in the view to be displayed
convertView = LayoutInflater.from(mContext).inflate(
R.layout.custom_appetizers, null);
// initialize the views
holder = new ViewHolder(); // creates a new view
holder.aPPetizer = (TextView) convertView // calls the view
.findViewById(R.id.appetizer);
holder = new ViewHolder();
holder.appetizerImage = (ImageView) convertView
.findViewById(R.id.appetizerImage);
// call the view and setTag to the parameter (holder)
convertView.setTag(holder);
} else { // if view is previously displayed
// initialize holder
holder = (ViewHolder) convertView.getTag();
}
// get the position of the row
ParseObject appetizerObject = (ParseObject) mAppetizer.get(position);
// title
String appetizers = appetizerObject.getString("appetizers");
holder.aPPetizer.setText(appetizers);
// image
???
holder.appetizerImage.setImageResource();
return convertView; // return the view
}
public static class ViewHolder {
// declaration of variables
TextView aPPetizer;
ImageView appetizerImage;
}
我遇到问题的部分是: //标题 String appetizers = appetizerObject.getString(" appetizers"); < - 允许我将字符串存储在列"开胃菜" - 这是一个字符串,但对于图像,我不知道如何编码。
任何帮助将不胜感激。提前谢谢
答案 0 :(得分:2)
假设您可以从appetizerObject
引用中获取图片的网址,您只需从网络下载位图并将其设置为ImageView的位图。
虽然有很多方法可以手动实现它,但我建议使用库来管理下载和缓存过程。根据我的经验,我使用了以下库:
他们都有一个非常简单(和类似)的api。