隨筆 - 312, 文章 - 14, 評論 - 1393, 引用 - 0

          導(dǎo)航

          <2010年8月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          2930311234

          公告

          關(guān)注我的新浪微博

          我的著作









          常用鏈接

          留言簿(126)

          我參與的團(tuán)隊(duì)

          隨筆分類(818)

          隨筆檔案(310)

          文章分類(1)

          文章檔案(8)

          相冊

          ADSL、3G查詢

          CSDN

          eclipse

          ibm

          Java EE

          Linux

          Web

          云服務(wù)

          代理網(wǎng)站

          關(guān)注的網(wǎng)站

          協(xié)議

          喜歡的Blog

          國內(nèi)廣告平臺

          圖書出版

          在線培訓(xùn)

          開發(fā)工具

          微博客戶端

          手機(jī)鈴聲

          操作系統(tǒng)

          • ReactOS
          • 一個與windowXP/2003兼容的操作系統(tǒng)

          數(shù)學(xué)

          文件格式

          源碼資源

          移動(Mobile)

          編程語言

          英語學(xué)習(xí)

          最新隨筆

          搜索

          •  

          積分與排名

          • 積分 - 1974027
          • 排名 - 6

          最新評論

          閱讀排行榜

          評論排行榜

          移動互聯(lián)網(wǎng)的新寵:Android之繽紛世界

          文為原創(chuàng),如需轉(zhuǎn)載,請注明作者和出處,謝謝!

                 Android這個詞已強(qiáng)占我們的眼球有一段時間了。在此之前,提到Android,沒人會和移動互聯(lián)網(wǎng)以及Google這兩個當(dāng)今最火辣的詞聯(lián)系起來。然而,自從Google推出自己的移動操作系統(tǒng)Android以來,AndroidGoogle和移動互聯(lián)網(wǎng)就好像10年前的Windows、微軟和PC操作系統(tǒng)一樣,成為了當(dāng)今最吸引眼球的組合。

               說到Android,現(xiàn)在一點(diǎn)都不會引起歧義,她就是Google最值得驕傲的移動操作系統(tǒng)。雖然Android并不是第一個智能手機(jī)操作系統(tǒng),當(dāng)然,也不會是最后一個智能手機(jī)操作系統(tǒng)。但她卻僅在出生不到兩年時間里成為了有望超越一切的移動操作系統(tǒng)。甚至在美國2010年第2季度的Android手機(jī)銷量已經(jīng)超越被認(rèn)為是銷售之王的IPhone。成為了當(dāng)今銷量增長最快的系統(tǒng)。取得這些成績,當(dāng)然,Android取得今天這些成績除了出身名門外,還有就是Android的免費(fèi)開源。任何人、任何組織都可以免費(fèi)使用Android,而無需付給Google一分錢。由于這些好處,使用支持Android的手機(jī)廠商越來越多。甚至被譽(yù)為“山寨之王”的聯(lián)發(fā)科也在研制支持Android的芯片,如果成功,Android手機(jī)的價(jià)格有望降到1000元以下,如果大多數(shù)Android手機(jī)真到了這個價(jià)格,那將會成為Android的另一個殺手锏。

          Android除了其客觀的優(yōu)勢外,主要面向移動互聯(lián)網(wǎng)也是Android成功的一個主要因素。大筆者寫作本文時,Android的最新版本是2.2。經(jīng)過試用,感覺Android 2.2的瀏覽器速度較以前的版本有了非常大的提高,Android 2.2的瀏覽器被稱為世界上最快的移動瀏覽順口 。在Android 2.2中還加入了新的Just-In-Time(JIT)技術(shù),使用在Android 2.2中運(yùn)行的程序的運(yùn)行速度較以前的版本快了2.5倍。

          Android的瀏覽器速度的提升也會為我們的應(yīng)用程序提供更多的選擇.傳統(tǒng)的Android應(yīng)用程序的UI都由Android組件來實(shí)現(xiàn)。而我們有了更快的瀏覽器,可以將在PC領(lǐng)域風(fēng)起云涌的AJAX與移動瀏覽器結(jié)合來向用戶展現(xiàn)更絢麗的界面。說起AJAX,可能從事Web開發(fā)的程序員并不會陌生。在最近幾年國內(nèi)外也出現(xiàn)了很多流行的AJAX框架。其中Ext JS就是其中的佼佼者。Ext JS主要用于設(shè)計(jì)Web界面,其中大量使用了JavaScriptExt JS技術(shù),但使用起來卻很容易。例如,Ext JS可以很容易地模擬Windows XP的界面,當(dāng)然,這個界面是基于Web的。在《人人都玩開心網(wǎng):Ext JS + Android + SSH整合開發(fā)web與移動SNS》一書中通篇來完成一個利用Ext JS技術(shù)實(shí)現(xiàn)的SNS系統(tǒng),界面就模仿了Windows XP的風(fēng)格,見圖1所示。




              顯然,加入了Ext JSWeb程序要比傳統(tǒng)的Web程序絢麗得多。既然PC可以如此,那么手機(jī)為什么不呢?經(jīng)過筆者的測試,Ext JS也同樣可以在Android內(nèi)嵌的手機(jī)瀏覽器中使用,讓我們看看如圖2所示的實(shí)際效果。

          如果本文的讀者是開發(fā)人員,那么就需要使用Android SDKWebView組件來顯示我們需要的內(nèi)容。在《人人都玩開心網(wǎng):Ext JS + Android + SSH整合開發(fā)web與移動SNS》一書中除了提供了提供了一個完整的基于Web版的SNS,還開發(fā)了一個基于AndroidSNS。在這個Android版的SNS中,利用了WebView組件來顯示服務(wù)端返回的HTML格式的內(nèi)容。當(dāng)然,如果讀者也可以向其中嵌入AJAXExt JS等高級特性。

          AndroidWebView固然強(qiáng)大,不過很多時候還要依賴于Android組件。這些組件的常規(guī)的使用方法這里就不必說了,而在這些組件中還有很多比較有趣的使用方法。例如,使用過QQ for Android的開發(fā)人員可能會發(fā)現(xiàn),在輸入聊天記錄時,可以直接將表情圖像放到EditText組件中(如圖3所示)。也許會多初學(xué)者會感覺實(shí)現(xiàn)這個功能比較困難,但實(shí)際上實(shí)現(xiàn)這個功能再簡單不過了。


               我們一般通過EditTextsetText方法來設(shè)置EditText中的文本,例如如下的代碼向EditText添加了一個字符串。

          EditText edittext = (EditText)findByView(R.id.edittext);
          Edittext.setText(“測試數(shù)據(jù)”);

               我們只需要對上面的代碼稍微做一下手腳,就可以實(shí)現(xiàn)將圖像插入到EditText中的目的。如果讀者看過《Android/OPhone開發(fā)完全講義》,會發(fā)現(xiàn)書中在很多情況下使用了文本標(biāo)記(類似于HTML語言的標(biāo)簽,但只包含了十分有限的HTML語言的功能)。在這些標(biāo)記中有一個<img>標(biāo)記。通過這個標(biāo)記,可以很容易地實(shí)現(xiàn)將圖像插入到EditText的功能。不過使用<img>標(biāo)簽要比使用其他的標(biāo)簽多一個步驟,這就是要實(shí)現(xiàn)一個ImageGetter接口,通過這個接口,可以獲得一個Drawable對象。先看看如下的代碼:


              ImageGetter imageGetter = new ImageGetter()
              {

                  @Override
                  
          public Drawable getDrawable(String source)
                  {
                      
          int id = Integer.parseInt(source);
                      Drawable d 
          = getResources().getDrawable(id);
                      d
                              .setBounds(
          00, d.getIntrinsicWidth(), d
                                      .getIntrinsicHeight());
                      
          return d;
                  }
              };

              上面的代碼通過ImageGetter接口的getDrawable方法返回了一個Drawable對象,其中source參數(shù)的值就是<img>標(biāo)簽的src屬性的值。我們需要通過如下的代碼來使用<img>標(biāo)簽。

              editText.append(Html.fromHtml("<img src='"

                      + faces[new Random().nextInt(6)] + "'/>", imageGetter, null));

              其中faces是一個int類型數(shù)組,保存了相應(yīng)的drawable資源的ID值。在使用<img>標(biāo)簽之前需要使用Html.fromHtml方法來封裝這些標(biāo)簽,如果使用的是<img>標(biāo)簽,需要使用fromHtml方法的第2個參數(shù)指定ImageGetter對象,以便通過<img>標(biāo)簽的src屬性獲得相應(yīng)的Drawable對象。通過EditText.append方法插入<img>標(biāo)簽后,系統(tǒng)會自動將<img>標(biāo)簽轉(zhuǎn)換成相應(yīng)的圖像顯示在EditText中。下面來看看我們的成果(如圖4所示)。



              在本文向讀者展示了Android中的瀏覽器、Ext JSEditText圖文混排的功能,讀者從中也看到了Android中的繽紛世界。其實(shí)Android的功能還遠(yuǎn)不只這些。那么剩下的就留給讀者來挖掘吧。





          Android開發(fā)完全講義(第2版)(本書版權(quán)已輸出到臺灣)

          http://product.dangdang.com/product.aspx?product_id=22741502



          Android高薪之路:Android程序員面試寶典 http://book.360buy.com/10970314.html


          新浪微博:http://t.sina.com.cn/androidguy   昵稱:李寧_Lining

          posted on 2010-08-17 12:14 銀河使者 閱讀(2063) 評論(2)  編輯  收藏 所屬分類: java 原創(chuàng)移動(mobile)Android/OPhone

          評論

          # re: 移動互聯(lián)網(wǎng)的新寵:Android之繽紛世界  回復(fù)  更多評論   

          繼續(xù)攢錢,目標(biāo)G6
          2010-08-18 21:44 | Danfi

          # re: 移動互聯(lián)網(wǎng)的新寵:Android之繽紛世界  回復(fù)  更多評論   

          @Danfi
          直接G7吧
          2010-08-23 22:07 | 銀河使者
          主站蜘蛛池模板: 常宁市| 宜阳县| 谢通门县| 莱阳市| 泸水县| 无锡市| 黔东| 综艺| 农安县| 莱阳市| 平原县| 邹平县| 广昌县| 高邮市| 依安县| 定襄县| 正定县| 伊通| 康乐县| 金昌市| 灵宝市| 高密市| 秦皇岛市| 泗洪县| 车致| 米易县| 无为县| 灵台县| 临颍县| 襄汾县| 靖西县| 香河县| 扶沟县| 贞丰县| 交城县| 平原县| 如东县| 长沙县| 吉首市| 巫溪县| 礼泉县|