我收到来自服务器的响应,其中我得到了一个带有时间的NSDate参数。我在导航栏上有一个通知按钮。无论我们在45分钟后得到什么时间,我们必须显示通知按钮的调查次数按下按钮后,用户填写包含调查问题的调查。但是在45分钟之前,用户才能看到通知。
现在我的代码看起来像这样
-(void)checkForResponse:(HRNetworkDataModel *)dataModel
{
[HRUtility stopActivityIndicatorFromView:self.navigationController.view];
if ([dataModel.responseData[@"community_details"][@"status"][@"message"]isEqualToString:@"successful"])
{
self.pendingSurveyArray = dataModel.responseData[@"community_details"][@"data"][@"community_details"];
NSMutableArray *finalSurveyArray = [[NSMutableArray alloc] init];
for (NSInteger i=0; i<self.pendingSurveyArray.count;i++)
{ NSDictionary *tDict = self.pendingSurveyArray[i];
if((([tDict[@"survey_flag"] isEqualToNumber:[NSNumber numberWithBool:0]]) || [tDict[@"survey_flag"] isEqualToNumber:[NSNumber numberWithBool:0]]) ||[tDict[@"survey_flag"] isEqualToNumber:[NSNumber numberWithBool:0]])
{
[finalSurveyArray addObject:tDict];
self.communityVisitedDate = tDict[@"visited_time"];
}
}
if (finalSurveyArray.count == 0)
{
return;
}
else
{
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, 45 *60 * NSEC_PER_SEC), dispatch_get_main_queue(), ^{
[self.navigationItem.rightBarButtonItems[0] setBadgeValue:[NSString stringWithFormat:@"%lu",(unsigned long)finalSurveyArray.count]];
});
}
}
}
任何帮助将不胜感激。
答案 0 :(得分:0)
将响应时间存储在USERNAME_FIELD = 'email'
REQUIRED_FIELD = ['username']
中,并将该时间与viewWillAppear方法的当前时间进行比较,如果保存的时间和当前时差等于或大于显示通知的45分钟