Android学习之查看网络图片
生活随笔
收集整理的這篇文章主要介紹了
Android学习之查看网络图片
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在這里小編學習了查看網絡圖片的小案例,:
初始界面:
點擊瀏覽后,效果如下:
需要注意的是 該案例需要獲取聯網權限,即:
<uses-permission android:name="android.permission.INTERNET"/>?
具體步驟如下:
1.定義并初始化控件:
private EditText etImageUrl;private ImageView ivImage; /**控件初始化*/private void init() {ivImage = (ImageView) findViewById(R.id.ivImage);etImageUrl = (EditText) findViewById(R.id.etImageUrl);}2.建立Handler對象:
private Handler handler = new Handler(){public void handleMessage(android.os.Message msg) {//對接收到的消息進行處理 // Looper.prepare();switch (msg.what) {case SHOW_IMAGE:Bitmap bitmap = (Bitmap) msg.obj;//將OS流中的Object強制轉換為Bitmap對象 ivImage.setImageBitmap(bitmap);Toast toast = Toast.makeText(MainActivity.this, "圖片加載成功", Toast.LENGTH_SHORT);toast.setGravity(0, 0, 100);toast.show();break;default:break;}};};3.設置顯示網絡圖片的方法:
public void showImage(View view){//若在xml文件中使用onClick()屬性,則其方法格式必須為 方法名(View view)final String path = etImageUrl.getText().toString();if (TextUtils.isEmpty(path)) {Toast.makeText(MainActivity.this, "圖片路徑不能為空", Toast.LENGTH_SHORT).show();} else {new Thread(){public void run(){//鏈接服務器,請求獲取圖片try {URL url = new URL(path);//發出http請求HttpURLConnection httpURLConnection = (HttpURLConnection) url.openConnection();httpURLConnection.setRequestMethod("GET");//設置鏈接超時時間httpURLConnection.setConnectTimeout(5000);int responsecode = httpURLConnection.getResponseCode();//獲取響應碼if (responsecode == 200) {InputStream is = httpURLConnection.getInputStream();//獲取輸入流Bitmap bitmap = BitmapFactory.decodeStream(is);//2.告訴主線程,幫我更新界面,內容是BitmapMessage msg = new Message();msg.what = SHOW_IMAGE;msg.obj = bitmap;handler.sendMessage(msg);}else{Toast toast = Toast.makeText(MainActivity.this, "圖片加載失敗", Toast.LENGTH_SHORT);toast.setGravity(0, 0, 100);toast.show();}} catch (MalformedURLException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}}}.start();//務必啟動線程 }}至此,查看網絡圖片的小案例就完成了.
轉載于:https://www.cnblogs.com/toast/p/4650959.html
總結
以上是生活随笔為你收集整理的Android学习之查看网络图片的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Quartz2D知识点聚合案例
- 下一篇: Android第三夜