在我的应用程序中,我有一个条款和条件视图,描述了当用户选择同意他将进入登录页面时使用的条款,否则,它必须在用户首次在移动设备上启动应用程序后可见以登录视图启动
我怎么能这样做...... 任何想法都赞赏....
答案 0 :(得分:3)
您可以在NSUserDefaults
上使用旗帜。在applicationDidFinishLaunch
,您将检查标志,如果不存在,则显示免责声明并更新标志。
代码与此类似:
BOOL disclaimerAccepted = [[NSUserDefaults standardUserDefaults] boolForKey:@"disclaimerAccepted"];
if (!disclaimerAccepted) {
[window addSubview:disclaimerView];
[[NSUserDefaults standardUserDefaults] synchronize];
}
当用户点击接受按钮时,您可以按如下方式更新设置:
[[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"disclaimerAccepted"];
正如@mvds在评论中建议的那样,最好存储一个数字或字符串而不是bool值,其中包含应用程序的版本号。这样,您可以强制用户在更新应用时重新接受条款和条件。
答案 1 :(得分:0)
您可以使用NSUserDefaults
。
在applicationDidFinishLaunching
方法中,查找BOOL
中是否存在NSUserDefaults
密钥。如果它不存在,请运行您的代码以显示条款和条件,然后在NSUserDefaults
中将该变量设置为true,以便下次启动时确实存在。
答案 2 :(得分:0)
在您的应用启动时,使用NSUserDefaults检查是否存在具有您选择的名称的用户设置(例如firstRunFinished或userAgrredToTerms)。如果该设置存在且值为true(或YES),则可以正常进行。如果设置丢失,或者存在但值为false(或NO),则将条款和条件视图作为模式视图推送到主控制器视图堆栈的顶部。