Android 从网络加载图片
16lz
2021-01-23
public class ViewPhotoActivity extends Activity implements OnClickListener { protected static final int SUCCESS = 0; protected static final int FAILURE = 1; protected static final int ERROR = 2; private Button btn_view; private EditText editText; private ImageView imageView; private Handler mHandler = new Handler(){ public void handleMessage(Message msg) { switch (msg.what) { case SUCCESS: Bitmap bitmap = (Bitmap) msg.obj; imageView.setImageBitmap(bitmap); break; case FAILURE: Toast.makeText(ViewPhotoActivity.this, "加载失败", 1).show(); break; case ERROR: Toast.makeText(ViewPhotoActivity.this, "网络异常", 1).show(); break; default: break; } }; }; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_viewphone); btn_view = (Button) findViewById(R.id.btn_view); editText = (EditText) findViewById(R.id.et_url); imageView = (ImageView) findViewById(R.id.imageview); btn_view.setOnClickListener(this); } @Override public void onClick(View v) { if (v == btn_view) { getImage(); } } private void getImage() { new Thread(new Runnable() { @Override public void run() { try { URL url = new URL(editText.getText().toString()); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("GET"); conn.setConnectTimeout(5000); if (conn.getResponseCode()==200) { InputStream stream = conn.getInputStream(); Bitmap bitmap = BitmapFactory.decodeStream(stream); //imageView.setImageBitmap(bitmap); Message message = Message.obtain(); message.obj = bitmap; message.what = SUCCESS; mHandler.sendMessage(message); }else { mHandler.sendEmptyMessage(FAILURE); } } catch (Exception e) { e.printStackTrace(); mHandler.sendEmptyMessage(ERROR); } } }).start(); }}
更多相关文章
- Android:Ping命令测试网络
- android 检查网络状态
- 如何消除原生Android原生网络连接显示x或者惊叹号
- Android网络连接处理
- android使用web加载网页的js问题
- android 获取网络资源
- Android 下载进度条, 自定义加载进度条,loading动画
- Android使用DefaultHttpClient访问Wap网络