Android開發之網狀圖片擷取
做畢設用到的!網狀圖片的擷取
這裡就以我的情況簡單的介紹一下。
首先設計布局,直接拖幾個控制項就ok
開始在Acitivity中增加功能
在網上照一張圖片的連結:http://www.chzu.edu.cn/page/main1152/images/banner.jpg
貼上主要的代碼:
private Bitmap getUrlImageMap() {URL imageUrl = null;Bitmap bitmap = null;try {imageUrl = new URL(url);HttpURLConnection conn = (HttpURLConnection) imageUrl.openConnection();conn.connect();InputStream is = conn.getInputStream();bitmap = BitmapFactory.decodeStream(is);is.close();} catch (Exception e) {e.printStackTrace();}return bitmap;}上面的是通過HttpUrlConnection的連結擷取圖片的bitmap值,再來就是寫一個繼承AsyncTask的類,來實現載入圖片的功能
注意doInbackground()與onPostExecute(),前者是處理的是耗時的操作,後者處理的是UI的更新,這一點千萬不要搞錯了
class loadImage extends AsyncTask{Bitmap aBitmap;@Overrideprotected Void doInBackground(Void... params) {aBitmap = getUrlImageMap();return null;}@Overrideprotected void onPostExecute(Void result) {super.onPostExecute(result);imageView.setImageBitmap(aBitmap);}}跑起來,介面如下
例子很簡單,注意一片的擷取和非同步載入和UI的更新就ok,點我下載DEMO