學(xué)習(xí)Android編程語(yǔ)言注意事宜
但是Android是開放平臺(tái),更有機(jī)會(huì)吸引到電信商和軟件開發(fā)商,Android手機(jī)銷售量將增加近10倍。對(duì)于Android來(lái)說(shuō)將是一個(gè)革命性的突破,希望大家能夠?qū)W習(xí)了解。
從以上的鍵盤代碼我們可以看得出,程序中是通過(guò)觸發(fā)來(lái)改變坐標(biāo)(+1,-1)的方式來(lái)改蛇頭的方向, 可見(jiàn)坐標(biāo)在游戲編程中的作用。這個(gè)也是根據(jù)手機(jī)的屏幕是點(diǎn)陣的方式來(lái)顯示, 所以坐標(biāo)就是一個(gè)定位器。 在這里大家可能還有一個(gè)疑問(wèn)。
就是就這個(gè)蛇什么能夠以“7”字形來(lái)移動(dòng)行走, 其實(shí)我們稍微仔細(xì)觀察一下就知道了,在這里面, 他們也是通過(guò)坐標(biāo)的傳遞來(lái)實(shí)現(xiàn)的, 只要把頭部的坐標(biāo)點(diǎn)依次賦給下一個(gè)點(diǎn)。
后面的每一個(gè)點(diǎn)都走過(guò)了頭部所走過(guò)的點(diǎn),而蛇的頭部就是負(fù)責(zé)去獲取坐標(biāo),整個(gè)蛇的行走起來(lái)就很自然和連貫。 坐標(biāo)的方向變換又是通過(guò)判斷那個(gè)方向按鍵的按下來(lái)改變的, 這樣一來(lái), 鍵盤的作用就發(fā)揮出來(lái)了,蛇吃蘋果又是怎樣去實(shí)現(xiàn)?
上面我所說(shuō)到的坐標(biāo)就起了作用。在蛇所經(jīng)過(guò)的每一個(gè)坐標(biāo), 他們都要在蘋果所在的(ArrayList mAppleList = new ArrayList())坐標(biāo)集里面集依次判斷,若是坐標(biāo)相同,那個(gè)這個(gè)蘋果就被蛇吃了 。
在J2ME中,刷新都是在canvas中通過(guò)調(diào)用線程結(jié)合repaint()來(lái)刷新, 他們使線程不斷去循環(huán),去調(diào)用canvas, 筆者在Android編程語(yǔ)言入門時(shí)也曾經(jīng)想用J2ME的模式用在android 中,結(jié)果報(bào)異常了, 為什么呢?
很多人認(rèn)為Dalvik虛擬機(jī)是一個(gè)Java虛擬機(jī),因?yàn)?font size="-0">Android編程語(yǔ)言恰恰就是Java語(yǔ)言。但是這種說(shuō)法并不準(zhǔn)確。因?yàn)镈alvik虛擬機(jī)并不是按照J(rèn)ava虛擬機(jī)的規(guī)范來(lái)實(shí)現(xiàn)的,兩者并不兼容;同時(shí)還要兩個(gè)明顯的不同: Java虛擬機(jī)運(yùn)行的是Java字節(jié)碼。
而Dalvik虛擬機(jī)運(yùn)行的則是其專有的文件格式DEX(Dalvik Executable)。所以在以前JAVA 里面能使用的模式??赡茉?font size="-0">android 里面用不起來(lái) 。在自帶的例子里面他是通過(guò)消息的機(jī)制來(lái)刷新的。而在Android編程語(yǔ)言的消定義比較廣泛。
比如,手機(jī)的暫停, 啟動(dòng), 來(lái)電話、短信,鍵盤按下,彈起都是一個(gè)消息。總的來(lái)說(shuō), 事件就是消息;只要繼承Handler類就可以對(duì)消息進(jìn)行控制,或者處理, 根據(jù)具體情況進(jìn)行具體處理:
- class RefreshHandler extends Handler {
- //響應(yīng)消息。
- public void handleMessage(Message msg) {
- SnakeView.this.update();// 重要頁(yè)面
- SnakeView.this.invalidate();刷新頁(yè)面
- }
- // 向外提供人工的調(diào)用消息的接口,
- public void sleep(long delayMillis) {
- this.removeMessages(0);//注消消息
- // 添加消息,
- sendMessageDelayed(obtainMessage(0), delayMillis);
- }
最近我關(guān)注到,中國(guó)移動(dòng)推出了OPhone手機(jī),OPhone 手機(jī)兼容Android的所有應(yīng)用,你開發(fā)的Android軟件和游戲。很容易的就可以移植到OPhone手機(jī)上來(lái)。目前中國(guó)移動(dòng)用戶已經(jīng)超過(guò)6.8億,中國(guó)移動(dòng)如果在這6.8個(gè)億的市場(chǎng)里,推廣OPhone手機(jī),賺錢的機(jī)會(huì)可想而知。
現(xiàn)在,國(guó)內(nèi)手機(jī)上網(wǎng)的用戶突破8000萬(wàn),2007年,中國(guó)手機(jī)游戲市場(chǎng)運(yùn)營(yíng)收入達(dá)到1。5億元,成為繼互聯(lián)網(wǎng)企業(yè)之后又一就業(yè)熱點(diǎn),2008年手機(jī)網(wǎng)游仍將高速增長(zhǎng)。隨著3G的發(fā)展,到2009年底手機(jī)游戲市場(chǎng)規(guī)模可以達(dá)到16億元,而以往的手機(jī)游戲市場(chǎng)都被一些有經(jīng)濟(jì)實(shí)力的游戲公司或者SP來(lái)運(yùn)營(yíng)。
【編輯推薦】