gpt4 book ai didi

Android:如何用ImageView + 3 TextView优化ListView?

转载 作者:行者123 更新时间:2023-11-29 22:35:05 25 4
gpt4 key购买 nike

我一直在到处寻找是否有实现此目标的标准方法,但我每次都找到不同的解决方案。

基本上,我正在尝试构建一个Custom ListView,其中包含图像和两三行文本。

为了优化它,我知道必须使用以下内容:

  1. convertView:基本上如果 View 已经膨胀,就使用它

  2. 延迟加载:在调用行之前不加载行的内容

  3. 背景 下载和缓存:在自己的线程中下载图像,然后更新行(并可能缓存它们?)

我可以管理 1 和 2,但第三个真的让我感到困惑。

有这方面的最佳实践吗?

谢谢

最佳答案

感谢马克的帮助。这是执行他建议的一种方法(以防万一其他人好奇):

private class DownloadImageTask extends AsyncTask<Object, Integer, Bitmap> {

private ImageView iv;

protected Bitmap doInBackground(Object... params) {
try {
iv = (ImageView) params[0];
URL aURL = new URL("http://URLTOIMAGE/img" + params[1] + ".png" );
URLConnection conn = aURL.openConnection();
conn.connect();
InputStream is = conn.getInputStream();
BufferedInputStream bis = new BufferedInputStream(is);
Bitmap bm = BitmapFactory.decodeStream(bis);
bis.close();
is.close();
return bm;
} catch (IOException e) {
return null;
}
}

protected void onPostExecute(Bitmap result) {
iv.setImageBitmap((Bitmap) result);
}
}

它的用法如下:

new DownloadImageTask().execute(new Object[] {ImageViewHandle, position});

请注意,这不是工作代码。这是从更大的代码库中获取的,因此您必须进行适当的更改才能使其正常工作。

关于Android:如何用ImageView + 3 TextView优化ListView?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1517312/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com