下載地址(內含源碼、示例、jar)
:
http://loon-simple.googlecode.com/files/LGame-Android-0.2.96.7z
本次更新主要針對LGame與Android系統組件交互部分進行改進,簡化了流程與代碼,同時調整了LGame運行在不同環境運行時的顯示策略,解決了以往存在的大多數真機差異問題,以盡量滿足不同手機平臺的需求。
主要改進如下:
1、新增Touch類,用以替代Android系統默認的MotionEvent類(為了封裝自適屏坐標切換),所有觸屏參數自0.2.96起改為由此類傳遞。
2、刪除舊有的SpriteTile類,改為使用標準TMX地圖,相關封裝在org.loon.framework.android.game.action.map.tmx包下。
基本使用方法如下所示,更詳細可見源碼部分或等待0.3版發布時文檔。
效果圖:
3、新增Mode類,用以管理LGame引擎所開發游戲的顯示模式。
自LGame-0.2.96起,我們可以先用maxScreen函數創建一個480x320之類低分辨率的窗口,而后通過initialization(true,Mode.Fill)(參數中true代表橫屏,false代表豎屏)方式讓它以全屏狀態運行在800x480等較高分辨率的手機之上,調用此函數所產生的窗體完全不需修改其它部分,坐標與畫面比例都將自動切換(當然,縮放的代價是畫面與速度的損耗無法避免)。
4、不再強制綁定Admob類庫,原有調用方式改為手動調用封裝好的AdUtils類。
需要注意的是,此封裝類僅處理AdView相關部分封裝,超出AdView權限的部分不再處理。做如此變更的主要原因在于,最新版的Admob類庫會依賴新增的AdMobActivity類,硬編碼處理隱患太多,故此交還權限給用戶(另一個原因是Admob類庫越來越大,如果不用Admob還帶著它APK在體積上吃虧(- -|||)),使用Admob類庫時請按Admob示例中格式自行配置AndroidManifest.xml文件即可,和普通程序沒有任何區別。(用AdUtils封裝的話配置AndroidManifest.xml就夠了,不用的話請完全照搬Admob示例中代碼)
基本使用方法如下所示:
效果圖:
5、不再強制用戶必須使用LGameAndroid2DActivity。
雖然個人并不主張同時創建多個Activity達到畫面轉換的效果(太耗資源),但假如您一定要使用此方式的話,自0.2.96版起可以在LGame初始化時設置setDestroy(false)函數,這樣就可以讓程序在注銷LGameAndroid2DActivity時不退出游戲,從而把LGameAndroid2DActivity當作一個非常普通的Activity使用。
6、簡化了LGame與標準Android組件交互時的編碼流程,讓Android窗體添加方式更貼近于LGame自帶組件的添加方式。
自0.2.96版起,當我們想加載一個規定大小的Web界面到LGame的指定位置,可以直接使用以下編碼做到:
效果如下圖所示:
效果如下圖所示:
另外,由于Android系統自身的特殊線程機制,如果在多線程環境中使用addView添加組件或者進行其它Android系統組件操作(比如LGame的onLoad等函數中調用),需要使用runOnUiThread將其包裝,具體代碼如下所示:
最后,網絡操作必須開啟 <uses-permission android:name="android.permission.INTERNET" />
PS:舉凡編程,都是先有標準的構建方式,再有XML配置方式,所以只要能進行Activity加載,就肯定能正常讀取和加載Android的XML文檔。更何況LGame引擎從本質上說就是一個Android圖形系統的封裝馬甲,絕不可能穿上馬甲就不能以默認方式編程了。如果您看不慣LGame的組件調用方式,大可以該怎么寫就怎么寫,操作上完全一致。
7、改良了AndroidDialog調用方式,讓其使用更簡便。
調用選擇框:
調用一個Assets文件夾下的HTML文檔:
其它不一一例舉,總之所有的Dialog都可以正常調用(用Android系統默認的調用方式也一樣)。
下載地址(內含源碼、示例、jar)
:
http://loon-simple.googlecode.com/files/LGame-Android-0.2.96.7z
————————————————
0.3版的SLG模塊有速度問題(在JavaSE版就沒事,郁悶),所以0.3預計延后一到兩周發布,先發個0.2.96版勞煩大家幫小弟找找BUG(另外一點,無法發布0.3的更重要原因在于,小弟最近脖子落枕了(-_-))……
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
