public class MainActivity extends ActionBarActivity {
Button b;
ImageView i;
String path="http://pic.nipic.com/2007-12-23/200712231523651_2.jpg";
ProgressDialog d;
Handler handler=new Handler(){
@Override
public void handleMessage(Message msg) {
byte[] data=(byte[]) msg.obj;
Bitmap bm=BitmapFactory.decodeByteArray(data, 0, data.length);
i.setImageBitmap(bm);
if(msg.what==1){
d.dismiss();
}
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
b=(Button) findViewById(R.id.button1);
i=(ImageView) findViewById(R.id.imageView1);
d=new ProgressDialog(this);
d.setTitle("提示信息");
d.setMessage("下载中,请稍后....");
d.setCancelable(false);
b.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
new Thread(new MyThread()).start();
d.show();
}
});
}
class MyThread implements Runnable{
@Override
public void run() {
// TODO Auto-generated method stub
HttpClient httpClient=new DefaultHttpClient();
HttpGet httpGet=new HttpGet(path);
try {
HttpResponse httpResponse =httpClient.execute(httpGet);
if(httpResponse.getStatusLine().getStatusCode()==200){
byte[] data=EntityUtils.toByteArray(httpResponse.getEntity());
Message message=Message.obtain();
message.obj=data;
message.what=1;
handler.sendMessage(message);
}
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
代码片--Android--Handler&Message
最新推荐文章于 2022-12-06 03:22:22 发布