下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
【移动应用开发技术】利用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年超星尔雅学习通《音乐与文学比较研究》考试备考题库及答案解析
- 2025年超星尔雅学习通《全球市场营销管理》考试备考题库及答案解析
- 2025年下学期高二化学安全教育背景试题(二)
- 载人飞艇乘客安全须知视频播放细则
- 2025年超星尔雅学习通《气象与环境》考试备考题库及答案解析
- 2025年超星尔雅学习通《城市环境治理与城市绿色发展》考试备考题库及答案解析
- 2025年超星尔雅学习通《人体免疫与感染》考试备考题库及答案解析
- 2025年超星尔雅学习通《国际市场战略与竞争分析》考试备考题库及答案解析
- QGDW10384-2023输电线路钢管塔加工技术规程
- 医院法务考试试题及答案
- 2025年江苏省南京市玄武区中考二模英语试题(含答案)
- 2025年山东省重点高中中考自主招生化学试卷试题(含答案)
- 传染病模型研究与应用
- 仓库维护合同范例
- 内蒙古鑫元硅材料科技有限公司年产10万吨颗粒硅绿色升级项报告书
- 变压器绝缘测试评分表
- 小学生心理健康与辅导(第4版) 课件 第九章 小学生心理健康教育课程
- 园区安全管理培训
- 护理危急值管理
评论
0/150
提交评论