【发布时间】:2015-10-10 23:40:03
【问题描述】:
一个非常基本的问题,我已经尝试自己解决了几个小时但无法解决。
所以我正在为 Pebble 创建我的第一个表盘,我希望手表每小时发出一次嗡嗡声(振动)。您还记得一些数字手表在点钟时会发出“哔”声吗?嗯,就是这样。
我认为最简单的方法是:
if (tick_time->tm_min == 0) {
vibes_short_pulse();
}
效果很好。现在我有一个小错误。在那一分钟内,如果重新创建了窗口(例如,如果您转到时间线或打开手表应用程序并快速返回到我的表盘),则再次调用 update_time() 以使其再次发出嗡嗡声。不是一个大错误,但有点烦人。
我尝试使用布尔标志来解决问题。
static bool vibed = false;
然后,
if (tick_time->tm_min != 0) {
vibed = false;
}
if (tick_time->tm_min == 0 && vibed == false) {
vibes_short_pulse();
vibed = true;
}
但显然,每次重新创建窗口时,无论如何,标志都会返回“false”。
我不知道如何解决它。如果您对我有提示,将不胜感激。谢谢!
【问题讨论】:
-
存储它振动的最后一个小时,仅在 minites 为零且小时不同时振动和更新存储的小时。但是框架可能会提供更好的方法(为什么一定要显示更新?)
-
你在哪里声明 vibed?如果您发布更多代码会有所帮助。
标签: c pebble-watch pebble-sdk