clapton_xpAThotmailDOTcom
在MIDP1.0中对图片透明的支持并不明确,但Nokia的API对此给予了很好的支持。
MIDP1.0 中的Image.createImage(String)及Image.createImage(byte[], int, int)方法,在Nokia手机中均可以实现图片的透明。
另外,当希望从一组相同大小的切片组成的大图片中获得每一个切片的小图时,在MIDP1.0中通常是这样实现的:
Image source; // the source image
Image clip = Image.createImage(clipWidth,clipHeight);
Graphics g = clip.getGraphics();
g.drawImage(source, posX, posY, TOP|LEFT);
但MIDP1.0的标准实现并不保证通过Image.createImage(int w, int h)方法获得的图片能够透明。Nokia自己的API解决了这个问题:
clapton_xpAThotmailDOTcom
Image img = com.nokia.mid.ui.DirectUtils.createImage(100, 100, 0x00000000);
以上代码创建了一个100*100的可变图片,并初始化其底色为透明。其中第三个参数即颜色的ARGB值,具体含义可以参考 [译]用MIDP 2.0 实现图片渐入渐出效果 这篇文章。之后在该图片上进行draw的操作,即可实现透明的图片。
参考资料:
诺基亚用户界面程序员指南(CH_NokiaUIAPIGuide_1_0.pdf)