0

在 Android TV 的应用程序中,我有一个垂直的 ListView,在每个单元格中显示一个远程图像。

使用遥控器键向下滚动列表,这应该显示下一个元素,但它卡住了,如果我返回,向上,几个项目(有焦点)然后我向下滚动它加载 2-4 个项目更多并再次卡住,依此类推。

图像是通过ion远程加载的,但使用 UniversalImageLoader 会发生相同的行为。仅使用占位符图像,列表运行顺利。

看起来这是在单独的任务上加载远程图像的问题,但 ion 应该涵盖这一点。

class DayImagesAdapter extends BaseAdapter {

    Context context;
    List<String> data; //just an array of URL strings

    private static LayoutInflater inflater = null;

    public DayImagesAdapter(Context context, List<String> data) {
        this.context = context;
        this.data = data;
        inflater = (LayoutInflater) context
                .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    }

    @Override public int getCount() { return data.size(); }

    @Override public Object getItem(int position) {  return data.get(position);  }

    @Override public long getItemId(int position) { return position; }

    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        View vi = convertView;
        if (vi == null)
            vi = inflater.inflate(R.layout.layout_image_cell, null);
        ImageView imageView = (ImageView) vi.findViewById(R.id.imageDayImagesCell);
        String url = Constants.BASE_URL + data.get(position);

        Ion.with(imageView).placeholder(R.drawable.placholder_image).load(url); // <-problem

        return vi;
    }
}
4

0 回答 0