是否可以在WL.BusyIndi​​cator中更新文本消息?

时间:2013-08-17 18:57:43

标签: ibm-mobilefirst worklight-studio worklight-runtime

在我开始长时间运行的过程之前,我通过此代码创建了一个新的WL.BusyIndi​​cator ...

if (gblShowBusyIndicator) {
    busyIndicator = new WL.BusyIndicator('loader', 
        {text: 'Refreshing local sales data...',
        opacity: 0.85,
        fullScreen: true});
    busyIndicator.show();
}

是否可以在该过程中间歇性地更新“text”参数?我试过调用这个函数,但它不起作用。有什么想法吗?

function setBusyIndicatorStatus(status) {
    try {
        if (busyIndicator.isVisible()) {
            busyIndicator({text: status});
        }       
    } catch (e) {
        if (gblLoggerOn) WL.Logger.debug(">> setBusyIndicatorStatus(" + status + ") failure... discarding");
    }
}

1 个答案:

答案 0 :(得分:0)

经过一些额外的考虑,这是我如何解决问题,但我想知道是否有更好的方法,而不是在我的代码中的某些点切换显示/隐藏不同的状态消息。

谢谢!

function setBusyIndicatorStatus(view, status) {
    if (gblLoggerOn) WL.Logger.debug(">> setBusyIndicatorStatus(" + view + ", " + status + ")");
    try {
        if (busyIndicator.isVisible()) busyIndicator.hide();    
    } catch (e) {
        if (gblLoggerOn) WL.Logger.debug(">> setBusyIndicatorStatus(" + view + ", " + status + ") failure... discarding");
    }

    busyIndicator = null;

    var options = {text: null, opacity: 0.85, fullScreen: true};
    options.text = status;

    busyIndicator = new WL.BusyIndicator(view, options);
    busyIndicator.show();   
}