有關(guān)Android編程學(xué)習(xí)技巧全解析
Android編程學(xué)習(xí)是一個(gè)非常強(qiáng)大的SDK,它使用基于XML的布局和定制視圖聯(lián)合了起來,現(xiàn)在我們要做的就是等待Google發(fā)布***個(gè)基于Android的手機(jī),并使用它。
這個(gè)演示應(yīng)用程序?qū)⒀菔玖擞脩舻漠?dāng)前的經(jīng)度和緯度(在文本框中顯示)。onCreate構(gòu)造方法將和上面的例子基本相同,除了在其中加入了鍵盤處理,現(xiàn)在讓我們看一下onKeyDown的代碼。
下面讓我們來解釋一下這段代碼,首先,這段代碼檢查了當(dāng)前被按下的鍵,但還沒有開始處理。而是在getLocation方法中處理這一切的。然后,將裝載flag標(biāo)志以及調(diào)用getLocation方法,下面是getLocation方法的代碼。
- public class CustomView extends View
- { LocateMe overlord; public CustomView(LocateMe pCtx)
- { super(pCtx); overlord = pCtx; } public void onDraw(Canvas cvs)
- { Paint p = new Paint(); String sLat = "Latitude: " + overlord.getLat();
- String sLon = "Longitude: " + overlord.getLon(); cvs.drawText(sLat , 32, 32, p);
- cvs.drawText(sLon, 32, 44, p); } }public void CreateView()
- { customView = new CustomView(this); }
到這為止,程序開始變得更有趣了。但是不幸的是,Google關(guān)于之方面的文檔還是比較少了。在程序的變量聲明之后,我們需要演示一些裝載信息。R.layout.loading符合了另一個(gè)簡單的XML布局視圖。
通過簡單地調(diào)用setContentView方法可以使用轉(zhuǎn)載信息重繪屏幕。 讀者要注意的是:在編譯時(shí),Android編程學(xué)習(xí)會(huì)預(yù)先將所有的XML布局?jǐn)?shù)據(jù)包裝起來。如果我們想在編譯后變化布局屬性,按著規(guī)定,我們必須在源程序中做這些事。
獲得LocationManager的唯一方法是通過getSystemService()方法的調(diào)用。通過使用LocationManager我們可以獲得一個(gè)位置提供者的列表。在一個(gè)真實(shí)的手持設(shè)備中,這個(gè)列表包含了一些GPS服務(wù)。實(shí)際上,我們希望選擇更強(qiáng)大,更精確,***不帶有其他附加服務(wù)的GPS。
現(xiàn)在,在模擬器中提供了一個(gè)用于測試的GPS,這個(gè)GPS來自San Francisco。定制的GPS文件可以可以被上傳,并進(jìn)行測試。如果我們要測試更復(fù)雜的應(yīng)用,來自San Francisco的GPS可能并不適合。目前我們可以使用位置管理器和位置提供者進(jìn)行g(shù)etCurrentLocation的調(diào)用。
這個(gè)方法返回本機(jī)的當(dāng)前位置的一個(gè)快照,這個(gè)快照將以Location對象形式提供。在手持設(shè)備中,我們可以獲得當(dāng)前位置的經(jīng)度和緯度?,F(xiàn)在,使用這個(gè)虛擬的手持設(shè)備,我們可以獲得這個(gè)例子程序的最終結(jié)果:建立了顯示一個(gè)定制的視圖。
這個(gè)定制的Android編程學(xué)習(xí)視圖獲得了經(jīng)度和違度的測試數(shù)據(jù),并將這些數(shù)據(jù)顯示在屏幕上。這要求一個(gè)指向LocateMe的指針,Activity類是整個(gè)應(yīng)用程序的核心。它的兩個(gè)方法是構(gòu)造方法和onDraw方法。
這個(gè)構(gòu)造方法調(diào)用了超類的構(gòu)造方法以及引起了Activity指針的中斷。onDraw方法將建立一個(gè)新的Paint對象(這個(gè)對象封裝了顏色、透明度以及其他的主題信息),這個(gè)對象將會(huì)訪問顏色主題。在本程序中,安裝了用于顯示的字符串,并使用畫布指針將它們畫到屏幕上。這個(gè)和我們了解的J2ME游戲的畫布看起來非常類似。
【編輯推薦】