



下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
【移动应用开发技术】利用HTTP从网络下载图片并显示
利用Http从指定地址下载图片并显示出来/**
*
简单的封装一个http下载类
*
*/
public
class
HttpUtils
{
//指定一张图片
private
String
URL_PATH
=
"/files/RemoteFiles/20140420/095185001.jpg";
public
HttpUtils(){
}
//返回一个byte类型的数组
public
byte[]
getData(){
HttpClient
httpClient
=
new
DefaultHttpClient();
HttpGet
httpGet
=
new
HttpGet(URL_PATH);
HttpResponse
httpResponse
=
null;
try
{
httpResponse
=
httpClient.execute(httpGet);
if
(httpResponse.getStatusLine().getStatusCode()
==
200)
{
byte[]
data
=
EntityUtils.toByteArray(httpResponse
.getEntity());
return
data;
}
}
catch
(Exception
e)
{
e.printStackTrace();
}
return
null;
}
}//用于调用的avtivity
public
class
MainActivity
extends
Activity
{
private
Button
btnDown;
private
ImageView
img;
private
ProgressDialog
dialog;
@Override
protected
void
onCreate(Bundle
savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btnDown
=
(Button)
findViewById(R.id.button1);
img
=
(ImageView)
findViewById(R.id.p_w_picpathView1);
dialog
=
new
ProgressDialog(this);
dialog.setTitle("提示信息");
dialog.setMessage("正在下载中,请稍后...");
dialog.setCancelable(false);
btnDown.setOnClickListener(new
View.OnClickListener()
{
@Override
public
void
onClick(View
v)
{
new
Thread(mRunnable).start();
dialog.show();
}
});
}
private
Runnable
mRunnable
=
new
Runnable()
{
@Override
public
void
run()
{
//
TODO
Auto-generated
method
stub
byte[]
data
=
new
HttpUtils().getData();
Message
msg
=
Message.obtain();
msg.obj
=
data;
msg.what
=
0x001;
handler.sendMessage(msg);
}
};
private
Handler
handler
=
new
Handler()
{
//
在Handler中获取消息,重写handleMessage()方法
@Override
public
void
handleMessage(Message
msg)
{
//
判断消息码是否为0x001
if(msg.what
==
0x001){
byte[]
data=(byte[])msg.obj;
Bitmap
bmp=BitmapFactory.decodeByteArray(data,
0,
data.length);
img.setImageBitmap(bmp);
dialog.dismiss();
}
}
};
}//布局
.xml
很简单只有两个控件
<RelativeLayout
xmlns:android="/apk/res/android"
xmlns:tools="/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity"
>
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:layout_marginBottom="54dp"
android:text="下载"
/>
<ImageView
android:id="@+id/p_w_picpathView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="79d
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年双层客房车项目发展计划
- 心理学情绪管理说课课件
- 出卖大货车协议书范本
- 2025年高精度压力、差压变送器项目发展计划
- 2025年社交电商合作协议书
- 多方承诺协议书范本
- 公司常用协议书范本模板
- 2023-2024学年北京市海淀区首都师大附中七年级(上)分班考数学试卷
- 解除经销协议书范本
- 2025年硅粉系列项目发展计划
- 急性ST段抬高型心肌梗死溶栓治疗专家共识2025
- 支付宝防诈骗试题及答案
- 深信服下一代防火墙技术白皮书20231120
- 大题01 化工流程综合题(分类过关)(解析版)
- 人教版高中化学必修二第五章化工生产中的重要非金属元素第二节课时1氮气与氮的固定一氧化氮和二氧化氮练习含答案
- 《美味的早餐》小学少儿美术教育绘画课件创意教程教案
- 企业入孵合同范本
- 《特种作业人员培训》课件
- 铝单板雨棚施工方案
- 《心脑血管疾病防治》课件
- 护理质量改善项目开题汇报
评论
0/150
提交评论