我似乎无法使cancelUserAttentionRequest工作。我有以下......
.mm文件
void SetNotify()
{
this->notify = [NSApp requestUserAttention:NSCriticalRequest];
}
void RemoveNotify()
{
if (!this->notify) {
return;
}
[NSApp cancelUserAttentionRequest:this->notify];
}
头
protected:
int notify;
我正在使用计时器调用SetNotify,然后另一个计时器在5秒后运行。图标弹跳很好,但它不会停止弹跳。我错过了什么吗?
答案 0 :(得分:1)
删除if (!this->notify)
支票。
requestUserAttention:
的文档没有说明它返回的整数的性质(它可能是任何有效整数),当前实现返回0
为第一个请求。如果您需要确保在SetNotify()
之前调用RemoveNotify()
,请使用单独的布尔标记。
(另外,您应该将返回值存储在NSInteger
中,而不是int
。)