使用Indeterminate进度指示器显示警报Nokia Full Touch j2me

时间:2012-08-30 09:38:49

标签: java-me spinner nokia midp lcdui

有人知道如何在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

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

enter image description here

2 个答案:

答案 0 :(得分:1)

根据您推荐的诺基亚页面以及Gauge API javadocs(available online)提供的说明,您如何创建Gauge的方式看起来正确:

  

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

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

  

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

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

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

答案 1 :(得分:-1)

Hehehe,线索在你给的链接中 -

  

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

所以这不可能!