使用数组适配器在列表视图中从parse.com检索图像

时间:2016-06-10 23:28:22

标签: android listview parse-platform android-arrayadapter

我一直在寻找答案,但没有人回答我的问题。我有数据存储在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"); < - 允许我将字符串存储在列"开胃菜" - 这是一个字符串,但对于图像,我不知道如何编码。

任何帮助将不胜感激。提前谢谢

1 个答案:

答案 0 :(得分:2)

假设您可以从appetizerObject引用中获取图片的网址,您只需从网络下载位图并将其设置为ImageView的位图。

虽然有很多方法可以手动实现它,但我建议使用库来管理下载和缓存过程。根据我的经验,我使用了以下库:

他们都有一个非常简单(和类似)的api。