我见过一个关于如何在listview中显示textview和imageview的示例。这些图像文件位于可绘制文件中。
public View getView(int position, View convertView, ViewGroup parent) {
if(convertView==null){
convertView=LayoutInflater.from(mContext).inflate(R.layout.item, null);
ItemViewCache viewCache=new ItemViewCache();
viewCache.mTextView=(TextView)convertView.findViewById(R.id.text);
viewCache.mTextView1=(TextView)convertView.findViewById(R.id.text1);
viewCache.mImageView=(ImageView)convertView.findViewById(R.id.image);
convertView.setTag(viewCache);
}
ItemViewCache cache=(ItemViewCache)convertView.getTag();
cache.mTextView.setText(texts[position]);
cache.mTextView1.setText(texts1[position]);
cache.mImageView.setImageResource(images[position]);
return convertView;
}
}
private static class ItemViewCache{
public TextView mTextView;
public TextView mTextView1;
public ImageView mImageView;
}
private String[] texts=new String[]{"one","two","three"};
private String[] texts1=new String[]{"wether","tuan","background"};
private int[] images=new int[]{R.drawable.img1,R.drawable.img2,R.drawable.img3};
但我所拥有的是这些图片的外部网址链接:
private String[] images=new String[]{"http://ia.media-imdb.com/images/M/MV5BMjMyOTM4MDMxNV5BMl5BanBnXkFtZTcwNjIyNzExOA@@._V1._SX54_CR0,0,54,74_.jpg",
"http://i.media-imdb.com/images/SF1f0a42ee1aa08d477a576fbbf7562eed/realm/feature.gif",
"http://ia.media-imdb.com/images/M/MV5BMzk3MTE5MDU5NV5BMl5BanBnXkFtZTYwMjY3NTY3._V1._SX54_CR0,0,54,74_.jpg"};
我应该使用什么方法来显示这些图像?
答案 0 :(得分:1)
您可以使用来自How to load an ImageView by URL in Android?
的史蒂夫代码加载图片现在您有两个选择:
1)使用自定义列表视图(您在其中创建一个xml文件,显示图像视图,textview以及列表中每行所需的其他项目)
2)使用标准列表视图,其中只包含一个TextView(它有一个CompoundDrawable,可以让你将图像定位在文本的左/右/上/下)
1)自定义列表视图
为您的行布局创建一个xml资源,其中包含textview和imageview(可能还有其他项),然后在列表视图中显示它,在ImageView上调用setImageBitmap。有关创建自定义列表视图的详细信息,请参阅http://www.softwarepassion.com/android-series-custom-listview-items-and-adapters/
中的教程2)标准列表视图
在默认文本视图上调用setCompoundDrawableWithIntrinsicBounds,为图像设置适当的Drawable。要将位图转换为drawable,请参阅How to convert a Bitmap to Drawable in android?
答案 1 :(得分:0)
http://developer.android.com/training/displaying-bitmaps/index.html