在J2ME中背景是个有意思的东东,先前没做过应用开发,发觉这个背景开发 有点和其他的应用开发一样,几个小图合成一个图,游戏用的时候再去分开,重复组成背景。
其主要常用的函数有:
构造函数:
TiledLayer(int column,int row,Image img,int width,int height);
//不清楚他为什么把列数放在前面呢?可能是开发时要以分列的原因吧
设置单元格内容
setCell(int column,int row,int content);
基本上就可以开工了:
1。准备背景源材料:
如下为网易POPO的小图,
2。建好project和MIDLET和DISPLAYABLE之后就可以写代码了
Graphics g=this.getGraphics();
Image img=null;
try {
img=Image.createImage("/popo.png");
}
catch(Exception e) {}
TiledLayer tl=new TiledLayer(12,5,img,16,16); //分成12列的原因为,模拟器的宽度为180/16~12刚好覆盖,
int[] map={
1,1,1,1,1, 1,1,1,1,1, 1,1,
2,2,2,2,2, 2,2,2,2,2, 2,2,
3,3,3,3,3, 3,3,3,3,3, 3,3,
0,0,0,0,0, 0,0,0,0,0, 0,0,
4,4,4,4,4, 4,4,4,4,4, 4,4
};
for(int i=0;i<map.length;i++) {
int col=i%12;
int row=(i-col)/12;
tl.setCell(col,row,map[i]);
//设置的顺序为 (行号,列号) (0,0) (0,1),(0,2)...........(0,11) ....................
}
tl.paint(g);//这时就可以把他paint到界面上来了
最后我们来看看NOKIA提供的一个j2me例子:sheepdog
看看他是怎么做的~~