我正在创建一个室内导航应用程序(用户可以在电话文件系统中存储不同建筑物的地图)。通过要求用户选择所需建筑物的地图来启动应用程序。选择此选项后,将使用文件解析器来解析和转换文件中的地图数据。当这种情况发生时,我创建了一个等待屏幕,请等待...并且还提出了一个加载/处理图像,这是一个gif。但是当我在Sun的WTK模拟器中运行它时,gif不会改变,它变成了静态画面。顺便说一下,我正在使用Netbeans 6.1。有任何想法吗?非常感谢。
答案 0 :(得分:3)
旧版手机不支持gif图像处理,因为它在Nokia forum上有说明。
然而,Dobb博士期刊中的article使用免费提供的GifEncoder.java课程提供了“在J2ME手机上显示GIF图像”的解决方案。 其J2ME端口可从同一页面here获得。
答案 1 :(得分:2)
默认情况下,MIDP不支持动画GIF,因此如果您真的想要播放GIF动画,则需要使用MMAPI。我建议你将动画拆分成单独的文件并手动制作动画。这是最有利的方式。
此代码可让您在结尾处播放动画gif
InputStream is = getClass().getResourceAsStream("/OceanFish.gif");
DataInputStream di = new DataInputStream(is);
StaticAnimation simage = StaticAnimation.createAnimation(di);
但我再也不建议它,因为它不是很便携。
答案 2 :(得分:0)
也许不是理想的解决方案,但你总是可以将gif动画帧提取到png格式的精灵表,然后使用Sprite类来处理动画。由于Sprite类是MIDP 2标准的一部分,因此这将更加便携。