0

我不确定我错过了什么,但我一直在尝试使用 Picasso 库从 themoviedb API 获取最受欢迎的电影海报以显示在网格视图中。有人知道我在做什么错吗?

这是我的图像适配器:

public class ImageAdapter extends BaseAdapter {

    private Context mContext;

    public ImageAdapter(Context c) {
        mContext = c;
    }

    public int getCount() {
        return 20;
    }

    public Object getItem(int position) {
        return null;
    }

    public long getItemId(int position) {
        return 0;
    }

    // create a new ImageView for each item referenced by the Adapter
    public View getView(int position, View convertView, ViewGroup parent) {
        ImageView imageView;
        if (convertView == null) {
            // if it's not recycled, initialize some attributes
            imageView = new ImageView(mContext);
            imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
            Picasso.with(mContext).load("https://api.themoviedb.org/3/movie/popular?api_key={APIKEY_HERE}&poster_path&images").into(imageView);
        } else {
            imageView = (ImageView) convertView;
        }

        return imageView;
    }

} 
4

2 回答 2

1

您必须检查 picasso 中的 url 它返回整个数据而不是图像 url,尝试将 poster_path 的值添加到正确的 url

于 2016-05-29T17:08:46.357 回答
1

上面提到的 API 将给出热门电影列表。

results: [
{
poster_path: "/inVq3FRqcYIRl2la8iZikYYxFNR.jpg",
adult: false,
overview: "life.",
release_date: "2016-02-09",
backdrop_path: "/nbIrDhOtUpdD9HKDBRy02a8VhpV.jpg",
popularity: 91.92864,
vote_count: 3497,
video: false,
vote_average: 7.2
}
]

提取要显示的电影图像的 poster_path 使用以下 URL 显示图像http://image.tmdb.org/t/p/w500/inVq3FRqcYIRl2la8iZikYYxFNR.jpg

您可以在此处找到文档http://docs.themoviedb.apiary.io/#reference/configuration/configuration

于 2016-05-29T17:16:37.743 回答