2

我正在创建一个室内导航应用程序(目的是用户可以在手机文件系统中存储不同建筑物的地图)。该应用程序通过要求用户选择所需建筑物的地图来启动。选择此选项后,将使用文件解析器来解析和转换文件中的地图数据。在发生这种情况时,我创建了一个等待屏幕,说请稍候......并且还放置了一个加载/处理图像,它是一个 gif。但是当我在 Sun 的 WTK 模拟器中运行它时,gif 并没有改变,它变成了静态图片。顺便说一句,我为此使用了 Netbeans 6.1。有任何想法吗?非常感谢。

4

3 回答 3

3

正如诺基亚论坛上所说,即使是旧手机也不支持 gif 图像处理。

然而,Dr. Dobb's Journal 中的一篇文章使用免费提供的GifEncoder.java类提供了关于“在 J2ME 移动电话上显示 GIF 图像”的解决方案。它的 J2ME 端口可从此处的同一页面获得。

于 2009-01-04T11:57:50.477 回答
2

默认情况下,MIDP 不支持动画 gif,因此如果您真的想播放动画 gif,则需要使用 MMAPI。我建议您将动画拆分为单独的文件并手动制作动画。这是最便携的方式。

此代码可让您在最后播放动画 gif

InputStream is = getClass().getResourceAsStream("/OceanFish.gif");
DataInputStream di = new DataInputStream(is);
StaticAnimation simage = StaticAnimation.createAnimation(di);

但我也不建议这样做,因为它不是很便携。

于 2009-01-03T22:52:03.230 回答
0

也许不是理想的解决方案,但您始终可以将 gif 动画帧提取到 png 格式的精灵表,然后使用 Sprite 类来处理动画。由于 Sprite 类是 MIDP 2 标准的一部分,因此这将更加可移植。

于 2009-01-05T14:35:29.627 回答