Android 如何将.bmp图像设置为ImageView
我有一个ImageView列表,可以从网上下载图片。 我从服务器下载了图像,它显示在ImageView中,但.bmp图像不显示在ImageView中。Android 如何将.bmp图像设置为ImageView,android,android-imageview,Android,Android Imageview,我有一个ImageView列表,可以从网上下载图片。 我从服务器下载了图像,它显示在ImageView中,但.bmp图像不显示在ImageView中。 请帮我解决这个问题。这是一种方法,您只需传递您需要下载的图像的url即可 完成后,此方法将返回可直接设置为ImageView的Drawable Drawable drawable_from_url(String url, String src_name) throws java.net.MalformedURLException, java.io
请帮我解决这个问题。这是一种方法,您只需传递您需要下载的图像的url即可 完成后,此方法将返回可直接设置为ImageView的Drawable
Drawable drawable_from_url(String url, String src_name) throws java.net.MalformedURLException, java.io.IOException
{
return Drawable.createFromStream(((java.io.InputStream)new java.net.URL(url).getContent()), src_name);
}
使用它如下
ImageView mImage = (ImageView)findViewById(R.id.MyImageView);
mImage.setImageDrawable(drawable_from_url("http://your/image/url/here", "src"));
希望有帮助:请检查以下代码:
RelativeLayout relLayout = new RelativeLayout(this);
URL centreImageURL = new URL(imageUrl);
URLConnection conn = centreImageURL.openConnection();
conn.connect();
InputStream is = conn.getInputStream();
BufferedInputStream bis = new BufferedInputStream(is);
Bitmap bm = BitmapFactory.decodeStream(is);
// 110 , 110 are the bitmap width & height
Bitmap tempBitmapImg = Bitmap.createScaledBitmap(bm, 110, 110,
true);
centreImgView.setImageBitmap(tempBitmapImg);
RelativeLayout.LayoutParams lp5 = new RelativeLayout.LayoutParams(
RelativeLayout.LayoutParams.WRAP_CONTENT,
RelativeLayout.LayoutParams.WRAP_CONTENT);
lp5.setMargins((screenWidth / 2) - 50,
(screenHeight / 2) - 105, 0, 0);
relLayout.addView(centreImgView, lp5);
setContentView(relLayout);
请回复以获得任何澄清此外,如果您正在为需要从网络获取然后需要显示在列表中的图像列表的ListView实施此操作,请回复以获得任何澄清。使用线程下载图像,然后使用处理程序类实现列表中的可视更改,确保一旦获取的图像不应再次显示。列表的getView方法必须是轻量级的,否则滚动会非常缓慢和急促