还有2个按钮。一个将重置计数器,将在另外20次发射后显示警报。 一个按钮会让它消失,再也不会再出现了。
你们有什么建议我会这样做吗? 一些代码可以真正帮助我! :)
答案 0 :(得分:4)
查看NSUserDefaults以存储应用程序启动次数的计数。
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
uint count = [defaults integerForKey:@"num_launches"];
if (count > 20) {
// Show alert
} else {
count ++;
[defaults setInteger:count forKey:@"num_launches"];
}
答案 1 :(得分:3)
在AppDelegate applicationDidFinishLaunching:withOptions:
方法中检查NSUserDefaults
:
int counter = [[NSUserDefaults standardUserDefaults] integerForKey:@"LaunchesCounter"];
if (counter == -1)
{ /* Cancel chekcing, cause earlier user choose hide alert */ }
else if (counter >= 20)
{ /* Show alert */ }
else // Increment counter
{
++counter;
[[NSUserDefaults standardUserDefaults] setInteger:counter forKey:@"LaunchesCounter"];
}
如果用户选择继续显示警告重写计数器0:
[[NSUserDefaults standardUserDefaults] setInteger:0 forKey:@"LaunchesCounter"];
如果用户选择隐藏警报设置计数器为-1:
[[NSUserDefaults standardUserDefaults] setInteger:-1 forKey:@"LaunchesCounter"];
答案 2 :(得分:1)
设置一个计数器。每次应用启动时都会增加它并将其存储在NSUserDefaults
中。每次检查以确保它小于20.如果它等于20,则重置并再次存储。
这有助于获得启动计数
NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];
NSInteger launchCount = [prefs integerForKey:@"launchCount"];
if (launchCount > limit) {
// Show alert
} else {
launchCount ++;
[prefs setInteger:count forKey:@"launchCount"];
}
launchCount++;
NSLog(@"Application has been launched %d times", launchCount);
[prefs setInteger:launchCount forKey:@"launchCount"];