編輯:關於Android編程
講到http就必需要了解URI和URL
URI (uniform resource identifier)統一資源標志符;
URL(uniform resource location )統一資源定位符(或統一資源定位器);
可以理解成URL是URI的子集,URI是一抽象的標識符,URL可以理解成具體的標識符;只要是網絡上的資源就能找到唯一的URL。
目錄結構
效果圖<喎?/kf/ware/vc/" target="_blank" class="keylink">vcD4KPHA+PGltZyBzcmM9"/uploadfile/Collfiles/20140511/2014051109214770.jpg" alt="\">
關鍵代碼
HttpUtils.java類
package com.dzt.downloadimage.utils; import java.io.IOException; import java.io.InputStream; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import android.graphics.Bitmap; import android.graphics.BitmapFactory; /** * http工具類 http可以使用HttpURLConnection或HttpClient * * @author Administrator * @date 2014.05.10 * @version V1.0 */ public class HttpUtils { /** * 獲取網絡圖片 * * @param urlString * 如:http://f.hiphotos.baidu.com/image/w%3D2048/sign=3 * b06d28fc91349547e1eef6462769358 * /d000baa1cd11728b22c9e62ccafcc3cec2fd2cd3.jpg * @return * @date 2014.05.10 */ public static Bitmap getNetWorkBitmap(String urlString) { URL imgUrl = null; Bitmap bitmap = null; try { imgUrl = new URL(urlString); // 使用HttpURLConnection打開連接 HttpURLConnection urlConn = (HttpURLConnection) imgUrl .openConnection(); urlConn.setDoInput(true); urlConn.connect(); // 將得到的數據轉化成InputStream InputStream is = urlConn.getInputStream(); // 將InputStream轉換成Bitmap bitmap = BitmapFactory.decodeStream(is); is.close(); } catch (MalformedURLException e) { // TODO Auto-generated catch block System.out.println("[getNetWorkBitmap->]MalformedURLException"); e.printStackTrace(); } catch (IOException e) { System.out.println("[getNetWorkBitmap->]IOException"); e.printStackTrace(); } return bitmap; } }使用到網絡必需要添加權限和要有網絡,否則下載失敗
下載屬於耗時的操作,如果放在UI線程出容易出現ANR;所以Android4.0之後對網絡的操作不能放在UI線程,在這裡我把下載放在AsyncTask處理。
class downloadImageTask extends AsyncTask在onPostExecute和onProgressUpdate可以方便我們更新UI,當然也可以開一個線程處理,使用AsyncTask就更方便。{ @Override protected Boolean doInBackground(String... params) { // TODO Auto-generated method stub System.out.println("[downloadImageTask->]doInBackground " + params[0]); mDownloadImage = HttpUtils.getNetWorkBitmap(params[0]); return true; } // 下載完成回調 @Override protected void onPostExecute(Boolean result) { // TODO Auto-generated method stub image.setImageBitmap(mDownloadImage); System.out.println("result = " + result); super.onPostExecute(result); } // 更新進度回調 @Override protected void onProgressUpdate(Integer... values) { // TODO Auto-generated method stub super.onProgressUpdate(values); } }
做了一個簡單的 引導頁 重點其實 是 引導頁下面的點隨著頁面滑動,上圖 就是 三個點 固定 一個點 滑動 算出來 每個點間隔距離 然後通過 公式算出 滑動多少
菜鳥起飛記android launchmode 使用場景Activity一共有以下四種launchMode:1.standard2.singleTop3.singleTa
Gallery與Spinner有共同父類:AbsPinner,說明Gallery與Spinner都是一個列表框。它們之間的區別在於Spinner顯示的是一個垂直的列表選擇
一、Android內存基礎物理內存與進程內存物理內存即移動設備上的RAM,當啟動一個Android程序時,會啟動一個Dalvik VM進程,系統會給它分配固定的內存空間(