2

有谁知道如何在 j2me 警报中显示进度条的微调器?

到目前为止,这是我的一段代码:

loadingDialog = new Alert("Please Wait","Please Wait.",null,AlertType.INFO);
Gauge gau = new Gauge( null, false,
            Gauge.INDEFINITE,
            Gauge.CONTINUOUS_RUNNING );

loadingDialog.setIndicator(gau);
loadingDialog.setTimeout(500000);
displays.setCurrent(loadingDialog);

我得到一条水平线(如滑块)。我想要的是一个微调器来代替它。
http://www.developer.nokia.com/Resources/Library/Full_Touch/ui-components/progress-indication.html

链接的第二张图片(标记为非交互式仪表)是我正在寻找的:

在此处输入图像描述

4

2 回答 2

1

根据您参考的诺基亚页面以及 Gauge API javadocs(在线提供)给出的说明,您创建 Gauge 的方式看起来是正确的:

CONTINUOUS_RUNNING
   表示范围不定的非交互式 Gauge 的连续运行状态的值。
...
INDEFINITE
   用于最大值的特殊值,以指示仪表具有不确定的范围。

诺基亚页面的解释(有点模糊)表明您描述的问题的最可能原因是诺基亚仅在表单中显示微调器,而不是在警报中:

- Java 表单中的不确定量规使用微调器。
- 警报使用“理发店卷”(固定长度的动画条)。

测试上述假设的方法是将像你一样的 Gauge 放入Form而不是,Alert看看设备/模拟器如何显示它。

如果 Form 显示微调器,那么最直接的解决方法是使用 Form 而不是 Alert。在这种情况下,由于表单缺少 Alert 提供的“解雇”功能,您必须自己实现它 - 例如,通过使用TimerTask来安排表单替换之前的屏幕。

于 2012-08-30T11:39:21.270 回答
-1

呵呵,线索在你给的链接里——

由于布局限制,Java 警报不使用微调器。

所以这是不可能的!

于 2012-08-30T10:58:38.563 回答