当前位置:首页 » 安卓系统 » android网络加载图片

android网络加载图片

发布时间: 2022-12-31 03:08:54

‘壹’ android ListView 异步加载 网络图片 我想用Bitmap做 代码如下:希望大家帮忙找找问题原因 谢谢!

通过消息发送的对象大小不能超过100K,你看看bitmap对象是不是超出了。还是发Uri,再加载吧。

‘贰’ Android如何获取网络图片

android中获取网络图片是一件耗时的操作,如果直接获取有可能会出现应用程序无响应(ANR:Application Not Responding)对话框的情况。对于这种情况,一般的方法就是耗时操作用线程来实现。下面列三种获取url图片的方法:


  1. 直接获取:(容易:ANR,不建议)

java">mImageView=(ImageView)this.findViewById(R.id.imageThreadConcept);
Drawabledrawable=loadImageFromNetwork(IMAGE_URL);
mImageView.setImageDrawable(drawable);

2. 后台线程获取url图片:

mImageView=(ImageView)this.findViewById(R.id.imageThreadConcept);
newThread(newRunnable(){
Drawabledrawable=loadImageFromNetwork(IMAGE_URL);
@Override
publicvoidrun(){

//post()特别关键,就是到UI主线程去更新图片
mImageView.post(newRunnable(){
@Override
publicvoidrun(){
//TODOAuto-generatedmethodstub
mImageView.setImageDrawable(drawable);
}});
}

}).start();

3.AsyncTask获取url图片

mImageView=(ImageView)this.findViewById(R.id.imageThreadConcept);
newDownloadImageTask().execute(IMAGE_URL);
<String,Void,Drawable>
{

(String...urls){
returnloadImageFromNetwork(urls[0]);
}
protectedvoidonPostExecute(Drawableresult){
mImageView.setImageDrawable(result);
}
}

‘叁’ Android ,listview 加载网络图片,点解图片放大预览怎么做

这里有个很好的例子,http://www.open-open.com/lib/view/open1376128628881.html

‘肆’ 如何在Android当中显示网络图片

在android当中显示一张网络图片的时候,其实是比较麻烦的。首先得把这个网络图片转换成java的imputstream流,然后再把这个留转换成一个bitMap.
bitMap是可以作为参数传给imageView的。

在下边的returnBitMap函数是最核心的,也是大家可以重用的,它负责把一个url的网络图片变成一个本地的BitMap。

packagecom.jinyan.image;

importjava.io.IOException;
importjava.io.InputStream;
importjava.net.HttpURLConnection;
importjava.net.MalformedURLException;
importjava.net.URL;

importandroid.app.Activity;
importandroid.graphics.Bitmap;
importandroid.graphics.BitmapFactory;
importandroid.os.Bundle;
importandroid.util.Log;
importandroid.view.View;
importandroid.view.View.OnClickListener;
importandroid.widget.Button;
importandroid.widget.ImageView;

{
/**.*/

StringimageUrl="http://i.pbase.com/o6/92/229792/1/80199697.uAs58yHk.50pxCross_of_the_Knights_Templar_svg.png";
BitmapbmImg;
ImageViewimView;

Buttonbutton1;

@Override
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
imView=(ImageView)findViewById(R.id.imview);
imView.setImageBitmap(returnBitMap(imageUrl));


}

publicBitmapreturnBitMap(Stringurl){
URLmyFileUrl=null;
Bitmapbitmap=null;
try{
myFileUrl=newURL(url);
}catch(MalformedURLExceptione){
e.printStackTrace();
}
try{
HttpURLConnectionconn=(HttpURLConnection)myFileUrl
.openConnection();
conn.setDoInput(true);
conn.connect();
InputStreamis=conn.getInputStream();
bitmap=BitmapFactory.decodeStream(is);
is.close();
}catch(IOExceptione){
e.printStackTrace();
}
returnbitmap;
}

}

‘伍’ android 异步加载网络图片Viewflipper

你说的我听不明白,也看不明白.

‘陆’ Android ImageView如何加载网络图片资源

用imageloader
1.指定一个URL
2.指定一个加载中的图片
3.指定一个加载失败的图片

‘柒’ android 加载网络图片错误

如果使用固定地址,如每个用户头像都是用户id+什么什么的,固定下来,这样更新有两种:
1。每次都重新加载。(不符合)。
2。服务器在返回其它数据的api中返回一个标记。通过标记判断。
对于2,如果用单独api去获取是否更新,有点浪费。选择你每次都要访问的api,服务器那边在其中加一个关于头像是否更新的标记。这样,只需要一次api访问就能一并解决这个问题。

热点内容
visa存储卡 发布:2025-05-15 09:35:07 浏览:619
js调用php的方法 发布:2025-05-15 09:29:13 浏览:496
android添加sdk 发布:2025-05-15 08:59:20 浏览:6
oracle数据导入sql 发布:2025-05-15 08:55:00 浏览:50
最适合做的脚本 发布:2025-05-15 08:54:27 浏览:381
太原php培训班 发布:2025-05-15 08:41:38 浏览:938
豌豆服务器地址 发布:2025-05-15 08:34:56 浏览:713
linux下php编译安装 发布:2025-05-15 08:30:37 浏览:593
c语言八进制十六进制 发布:2025-05-15 08:22:17 浏览:283
华为安卓如何更新鸿蒙 发布:2025-05-15 08:18:52 浏览:374