0

我的问题是......如何制作......这个......当用户第一次使用该应用程序时,我正在尝试制作一个 scollview 以在我的应用程序开始时显示条款和条件。如果用户接受了 T&C(通过单击接受按钮),则此 T&C scollview 将永远不会在应用程序开始时再次出现,因为他已经接受了。因此,他将来可以免费使用该应用程序。我该如何实施?有什么建议么?

4

3 回答 3

3

将 NSUserDefaults 与“TCShown”之类的键一起使用。如果在启动开始时 NSUserDefaults 中不存在密钥,则显示 T&C 并创建“TCShown”值,将其设置为 YES ([NSNumber numberWithBool:YES];) 并将其存储到 NSUserDefaults。

编辑:

假设你想在你的第一个 viewController 中展示 T&C,

#define kTCViewedFlag = @"tcViewed" 

-(void) viewDidAppear {

NSUserDefaults *myDefaults = [NSUserDefaults standardUserDefaults];

if(![myDefaults objectForKey:kTCViewedFlag]) {

//show the TC
    }

}


-(IBAction) userAcceptedTC {

[[NSUserDefaults standardUserDefaults] setObject:[NSNumber numberWithBool:YES] forKey:kTCViewedFlag];

[[NSUserDefaults standardUserDefaults] synchronize];
//dismiss the scrollView
}

-(IBAction) userDidDeclineTC {

//handle refusal of TC

}
于 2012-08-14T09:52:18.787 回答
0

In addition to Kaan's answer, you can add the TCShown field to the server and update the values accordingly. This will take care of the case when the user who has already accepted the T&C's logs in from a different device.

于 2012-08-14T10:44:47.633 回答
0

也许你会发现这很有用:RLAgreement View Controller

该项目允许开发人员在 iPhone 应用程序中包含协议、服务条款、保密协议等。当用户有有效的协议时,控制器会在用户的设置中存储一个变量,并在用户每次打开应用程序时进行检查。

于 2012-08-14T10:52:29.043 回答