2

我搜索了互联网,但有关 BlackBerry 10 开发的文档很少。BlackBerry 10 中是否有允许您在指定时间间隔后永久运行功能的功能?就像 iPhone/Objective-C 中的 NSTimer 一样,它可以在每 x 分钟左右运行一个函数。

4

4 回答 4

2

正如@Sorry_Boss 所指出的,您可以在 C++ 代码上使用QTimer 。如果您想在 QML 中执行此操作,您还可以在应用程序类的构造函数中注册它以在 QML中使用,如下所示:

qmlRegisterType<QTimer>("my.library", 1, 0, "QTimer");

然后,您可以将其导入您的 QML 文件:

import my.library 1.0

...并将其用作另一个组件的附加对象:

attachedObjects: [
    QTimer {
        id: timer
        interval: 1000 // 1 second
        onTimeOut {
            // do something
        }
    }
]
于 2013-05-10T03:51:18.647 回答
1

是的,这可以用 QTimer 来完成

在 cpp

QTimer *timer= new QTimer(this);
connect(timer, SIGNAL(timeout()), this, SLOT(update()));
timer->start(1000);

void AppName::update(){
//Do operation on timeout
}
于 2013-05-21T04:51:22.647 回答
1

使用QTimer

QTimer timer = new QTimer(this);
timer->start(intervalTime);

将定时器的超时信号与您的功能连接起来。

QObject::connect(timer, SIGNAL(timeout()), this,
            SLOT(yourFunction()));
于 2013-05-09T08:29:32.547 回答
0

作为一个更一般的答案,因为您可能会再次遇到同样的问题,所以您必须将 BB10 视为完全不同的操作系统和开发环境,因为它是。与旧环境不同的是,文档实际上非常好。例如,查找有关计时器的信息非常简单,只需访问 Cascades文档站点,选择 API Reference 并在过滤器文本框中输入“计时器”即可。

您还将以示例应用程序和一般文档和指南的形式找到大量帮助。

在此处输入图像描述

于 2013-05-10T17:08:20.737 回答