如何用TideSDK更新系统托盘图标?

时间:2013-08-05 10:07:33

标签: updates system-tray tidesdk trayicon

在我的index.html上,我已经为应用程序添加了一个新的系统托盘图标(工作正常):

tray = Ti.UI.addTray("inactive_icon.png", function(evt){
    if (evt.getType() == 'clicked') {
      if (!current_window.isVisible()){
        current_window.show();
      }
    }
});

当用户关注我的index.html上的链接时,他会访问另一个名为active.html的网站。 在此网站上,Icon应从'inactive_icon.png'更改为'active_icon.png'。不幸的是我无法将托盘对象传输到此站点。所以我再也无法访问该托盘图标了。

如何更改图标?

我试过用:

TI.UI.clearTray();

然后为我的应用程序构建一个新的托盘图标。但是当我这样做时,图标会改变但命令current_window.show();似乎被打破了。

那么,最好的办法是什么?

1 个答案:

答案 0 :(得分:0)

很抱歉,我是Stackoverflow的新手。 所以看一下这段代码:

Ti.UI.createMenuItem('Change Icon', function(e) {
        //Something's going on... let's change the icon.
        tray.setIcon('tray-active.png');
        setTimeout(function() {
            tray.setIcon('tray.png');
        }, 3000);
    }),

作者将更改系统托盘中的图标。当用户单击名为“ChangeItem”的菜单项时,该图标将在3秒内更改(settimeout)。

您可以在此处查看完整代码:https://github.com/meeech/Menu-App