有關Android編程學習技巧全解析
Android編程學習是一個非常強大的SDK,它使用基于XML的布局和定制視圖聯合了起來,現在我們要做的就是等待Google發布***個基于Android的手機,并使用它。
這個演示應用程序將演示了用戶的當前的經度和緯度(在文本框中顯示)。onCreate構造方法將和上面的例子基本相同,除了在其中加入了鍵盤處理,現在讓我們看一下onKeyDown的代碼。
下面讓我們來解釋一下這段代碼,首先,這段代碼檢查了當前被按下的鍵,但還沒有開始處理。而是在getLocation方法中處理這一切的。然后,將裝載flag標志以及調用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關于之方面的文檔還是比較少了。在程序的變量聲明之后,我們需要演示一些裝載信息。R.layout.loading符合了另一個簡單的XML布局視圖。
通過簡單地調用setContentView方法可以使用轉載信息重繪屏幕。 讀者要注意的是:在編譯時,Android編程學習會預先將所有的XML布局數據包裝起來。如果我們想在編譯后變化布局屬性,按著規定,我們必須在源程序中做這些事。
獲得LocationManager的唯一方法是通過getSystemService()方法的調用。通過使用LocationManager我們可以獲得一個位置提供者的列表。在一個真實的手持設備中,這個列表包含了一些GPS服務。實際上,我們希望選擇更強大,更精確,***不帶有其他附加服務的GPS。
現在,在模擬器中提供了一個用于測試的GPS,這個GPS來自San Francisco。定制的GPS文件可以可以被上傳,并進行測試。如果我們要測試更復雜的應用,來自San Francisco的GPS可能并不適合。目前我們可以使用位置管理器和位置提供者進行getCurrentLocation的調用。
這個方法返回本機的當前位置的一個快照,這個快照將以Location對象形式提供。在手持設備中,我們可以獲得當前位置的經度和緯度。現在,使用這個虛擬的手持設備,我們可以獲得這個例子程序的最終結果:建立了顯示一個定制的視圖。
這個定制的Android編程學習視圖獲得了經度和違度的測試數據,并將這些數據顯示在屏幕上。這要求一個指向LocateMe的指針,Activity類是整個應用程序的核心。它的兩個方法是構造方法和onDraw方法。
這個構造方法調用了超類的構造方法以及引起了Activity指針的中斷。onDraw方法將建立一個新的Paint對象(這個對象封裝了顏色、透明度以及其他的主題信息),這個對象將會訪問顏色主題。在本程序中,安裝了用于顯示的字符串,并使用畫布指針將它們畫到屏幕上。這個和我們了解的J2ME游戲的畫布看起來非常類似。
【編輯推薦】