:
kabul
if ([[NSUserDefaults standardUserDefaults] boolForKey:@"TermsAccepted"]){
//proceed with app normally
}
else{
//show terms
}
, aşağıdaki kod varsayılan ayarları değişecek: terimler böyle örneğin kabul edilir olmadığını Sen kontrol etmek zorunda kalacak up-to-date, burada kabul edilen cevabın bir Swift sürümüdür. senin App Delegesi yılında
ADIM 1
, aşağıdaki işlevi ekleyin. (Bool değerlerden oluşan varsayılan olarak yanlış olduğu gibi) bu ilk fırlatma ise
func applicationDidFinishLaunching(application: UIApplication) {
if !NSUserDefaults.standardUserDefaults().boolForKey("TermsAccepted") {
NSUserDefaults.standardUserDefaults().setBool(false, forKey: "TermsAccepted")
}
}
Bu
esasen yanlış şekilde TermsAccepted Bool ayarlayacaktır.
ADIM 2 kök görünümü denetleyicisi (uygulama başlatıldığında yükleyen görünümü denetleyicisi), bir terim olarak kabul edilip edilmediğini görmek için bir yol ya da değil ve hareket olmalıdır yılında
buna göre.
Aşağıdaki işlevi ekleyin.
ADIM 3
kullanıcı şartlarınızı kabul ettikten sonra
override func viewDidAppear(animated: Bool) {
if NSUserDefaults.standardUserDefaults().boolForKey("TermsAccepted") {
// Terms have been accepted, proceed as normal
} else {
// Terms have not been accepted. Show terms (perhaps using performSegueWithIdentifier)
}
}
, sen
gerçek için Bool TermsAccepted senin değiştirmek istiyorum. Dolayısıyla, terimlerin kabulünü ele alan yöntemin gövdesinde, aşağıdaki satırı ekleyin.
NSUserDefaults.standardUserDefaults().setBool(true, forKey: "TermsAccepted")
umarım bu yardımcı olur!
Loic
Ok teşekkürler. "Şartları göster" seçeneğine karşı uygulamanın "normal şekilde devam etmesini" nasıl sağlayacağınızı ayrıntılı bir şekilde açıklayabilir misiniz? – jac300
Bu size kalmış. Örneğin, kullanıcının uygulamayı ilk kez başlatması durumunda, viewController (ya da yalnızca tek bir VC kullanıyorsanız, yalnızca terimleri görüntüleyen) gösterilir. Terimler kabul edildiğinde, onu kapatır ve bahsettiğiniz gibi ikinci sırayı alırsınız. Bu alexandresoli tarafından açıklandığı gibi kök VC tarafından yapılabilir. Bir dahaki sefere kullanıcı geldiğinde, kök VC hemen ikinci VC'yi gösterir. – NightCoder
Teşekkürler. Evet, kavramı anlıyorum, ancak kodu anlayamıyorum. Öyleyse terimlerin kabul edildiğini söyleyelim ... programı "mevcut terimleri görmek ve bir sonrakine geçmek" için söyleyen kodu nasıl oluşturabilirim? Başka bir deyişle, alexandresoli'nin kod parçasına bakarak: [self presentViewController: YOUR_TERMS_CONTROLLER animasyonlu: EVET tamamlanması: yok]; "YOUR_TERMS_CONTROLLER" nedir, bir görünüm denetleyicisini nasıl etiketlerim ve programa göre nasıl başvurabilirim? – jac300