一般是常用的尺寸都做好需要的對應的素材,常見的一些屏幕尺寸128x160,
176x208,
208x208,
240x320,
還有WVGA(320*480),
HVGA(480*800),最后還得準備一個通用版的,或者一個比較小的版本,如果碰到不能判斷和適合的版本,就只能盡量用小屏幕的版本。反正手機開發(fā),一般都是分好多版本,畢竟手機的各種配置太多樣化了
=======================================================
用預編譯,寫死,有些機器不能通過getHeight(),getWidth()正確取得高寬的。
=======================================================
獲得屏幕的寬度和高度
盡量使用相對坐標,也就是根據(jù)寬度和高度計算位置
盡可能少的使用圖片
=======================================================
我引用論壇一個朋友的帖子,你可以看看
全屏問題
關鍵字列表:全屏/FullCanvas/setFullScreenMode 9
問題:SonyEricsson T630
該款手機的參數(shù):索尼愛立信 T630 SonyEricssonT630R401 ProfileMIDP-1.0 ConfigurationCLDC-1.0。“據(jù)我所知,不可以實現(xiàn)全屏顯示。”
問題:SonyEricsson K700c
k700c 直接用nokia的FullCanvas,可以全屏176 x 220。
k700c用midp2.0的那個this.setFullScreenMode(true);也是可以全屏的,176x220。
k700c直接用nokia的FullCanvas全屏好像是176*208,直接拿nokia60上的程序可以直接放進去。鍵值和60的也是相同的,只是多了一個返回鍵,我忘了值是多少了。用2.0的GameCanvas大小是176*220。
問題:不使用FullCanvas實現(xiàn)全屏的方法
為了用標準的SUN WTK2.1開發(fā)能兼容各種機型的MIDP2.0游戲,會遇到一個奇怪的全屏問題,在K700上好好的,到了Nokia上居然死活顯示一半,費了一番功夫后,終于不用FullCanvas實現(xiàn)了兼容K700和Nokia的全屏顯示,方法如下:
在索愛的K700上,實現(xiàn)全屏很簡單,如下寫法就可以了:
public Canvas1()
{ super(false);
this.setFullScreenMode(true);
this.width=getWidth();
this.height=getHeight();
} 得到的屏幕大小是176*220。
Nokia上就比較奇怪了,這種方式取得的width和height居然是176*144。
需要加以下代碼修正一下:
if(width>=176)
{ if(height<208)
{
height=208;
}
} 繪圖部分都以width和height為基準。
另外canvas1不能繼承系統(tǒng)的GameCanvas,因為系統(tǒng)GameCanvas里的緩沖圖還是176*144的,畫出來就只能是半屏,我用j2me polish里的GameCanvas修改一下后,放到src里代替系統(tǒng)GameCanvas就OK了。
==========================================
其實大家都沒注意到Canvas的一個方法:protected void sizeChanged(int w, int h) ,不在這個方法中處理屏幕尺寸,出現(xiàn)各種怪現(xiàn)象就很正常了。
本站僅提供存儲服務,所有內容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權內容,請
點擊舉報。