如何在取消激活按钮时暂停gif动画以及如何将gif相对于LWUIT按钮垂直对齐居中?

时间:2011-09-26 11:09:30

标签: java-me lwuit

我将动画gif放入资源编辑器。我基于此gif图片创建了一个Button,Button也有一个文本:

r = Resources.open("/resources.res");
uploadImg = r.getImage("upload");
envoieBtn = new Button("Envoyer", uploadImg);
envoieBtn.setTextPosition(Label.BOTTOM);
envoieBtn.setAlignment(Label.CENTER);

此按钮放在主屏幕中,在通过主屏幕上的第三个按钮(捕获图像中的第二行第一列)填充手机移动数据库(RecordStore)之前,此按钮不会启用。

我的问题是,即使envoieBtn按钮被禁用,其上的gif图像也会被动画化(红色箭头仍在向上移动)!那么如何暂停gif图像的动画?

我的第二个问题是如何将图像置于Button中心,因为在捕获的图像上我们看到gif不像Button文本那样居中。

这是拍摄的图像:

enter image description here

1 个答案:

答案 0 :(得分:0)

您可以通过覆盖按钮中的动画并避免调用super来暂停动画,只需返回false。 GIF将不再设置动画(您可以为禁用按钮有条件地执行此操作)。

由于对齐是由内容决定的,因此您无法将按钮与图像对齐而没有图像,因为文本的位置由图像决定。我建议您创建一个完全相同大小的透明图像对象,并将其分配给没有图像的按钮。