<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 312, 文章 - 14, 評(píng)論 - 1393, 引用 - 0
    數(shù)據(jù)加載中……

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

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

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

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

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

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




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

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

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


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

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

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


        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;
            }
        };

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

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

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

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



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





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

    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 銀河使者 閱讀(2058) 評(píng)論(2)  編輯  收藏 所屬分類: java 原創(chuàng)移動(dòng)(mobile)Android/OPhone

    評(píng)論

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

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

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

    @Danfi
    直接G7吧
    2010-08-23 22:07 | 銀河使者
    主站蜘蛛池模板: 男女啪啪免费体验区| 美腿丝袜亚洲综合| 亚洲欧美日韩综合久久久| A级毛片内射免费视频| 亚洲AV无码国产精品色| 国产精品69白浆在线观看免费| 亚洲av日韩av无码av| 免费无码精品黄AV电影| 亚洲第一男人天堂| 麻豆国产精品入口免费观看| 亚洲高清乱码午夜电影网| 国产片免费在线观看| 青青草国产免费国产是公开| 精品国产亚洲男女在线线电影| 精品熟女少妇aⅴ免费久久| 国产亚洲真人做受在线观看| 国产一区二区免费视频| 久久久久久亚洲AV无码专区| 久草免费在线观看视频| 亚洲 日韩 色 图网站| 国产片免费在线观看| 一级特黄录像免费播放中文版| 亚洲午夜福利717| 99蜜桃在线观看免费视频网站| 亚洲男女性高爱潮网站| 无码人妻久久一区二区三区免费丨| 亚洲国产欧美国产综合一区| 免费一级毛片正在播放| 中文字幕乱码免费看电影| 久久丫精品国产亚洲av不卡| 999国内精品永久免费观看| 亚洲欧美成人av在线观看| 免费在线黄色网址| 好紧我太爽了视频免费国产| 亚洲精品成人久久| 免费观看的a级毛片的网站| 免费人成网上在线观看| 亚洲AV无码乱码在线观看富二代| 国产四虎免费精品视频| 国产亚洲人成在线播放| 亚洲一区精品无码|