2

ユーザーにメッセージを表示するアプリを作成します..おそらくUIAlertviewを使用します。その後、ユーザーがアプリを 2 回目に実行すると、アラートは表示されなくなります。

それは可能ですか?正直なところ、これを行う方法についてはまったくわかりません。何か案が?私は STO で検索します。実際にはこのリンクですが、まだ混乱しています。

NSUserDefaults とは何ですか? NSUserDefaults はこの情報をどのように保存できますか? つまり、これが初めてか 2 回目です。

ありがとう。

4

5 に答える 5

7

NSUserDefaultsとは何かを知るために、公式ドキュメントを参照することをお勧めします。

そしてもちろん、あなたはあなたの目標を達成するためにそれを使うことができます。ユーザーのデフォルトを使用して、アプリの現在の実行量に関する情報を保存します。

多かれ少なかれ:

BOOL isRunMoreThanOnce = [[NSUserDefaults standardUserDefaults] boolForKey:@"isRunMoreThanOnce"];
if(!isRunMoreThanOnce){
    // Show the alert view
    // Then set the first run flag
    [[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"isRunMoreThanOnce"];
    [[NSUserDefaults standardUserDefaults] synchronize];
}
于 2012-11-01T09:27:14.197 に答える
3

はい、Uはアプリで初めてNSUserDefaultに値を保存し、アプリを開いたら別の値を設定できます。

お気に入り

if(![[NSUserDefault standardUserDefault] objectforKey:@"AppOpenFirstTime"])
{
// App Open First time 
// Show Alert
[[NSUserDefault standardUserDefault] setObject:@"1" forKey:@"AppOpenFirstTime"]
}
于 2012-11-01T09:26:52.587 に答える
2

NSUserDefaults に値を保存したかどうかを確認できます

NSString *flag = [[NSUserDefaults standardUserDefaults] stringForKey:@"not_first_run"];
if (!flag) {
    //first run, do somethig
}

そして、それを何らかの値に設定します

[[NSUserDefaults standardUserDefaults] setObject:@"just any string" forKey:@"not_first_run"];

NSUserDefaultsは、アプリケーションの起動の間に保存されるキーと値のストアです。

于 2012-11-01T09:29:49.847 に答える
1

あなたはcortezがあなたのリンクで言ったようにそれを正確に行うことができます。NSUserDefaultsはディスクに書き込まれ、アプリから作成およびアクセスされます。

このリンクを参照してください

于 2012-11-01T09:27:53.697 に答える
1

その時点でアプリケーションを初めて起動するのboolForKey:@"AlreadyRan"はですFALSE。その後、それを設定しTRUEます。

if(![[NSUserDefaults standardUserDefaults] boolForKey:@"AlreadyRan"] ) 
 {
    [[NSUserDefaults standardUserDefaults] setBool:TRUE forKey:@"AlreadyRan"];       
 }

NSUserDefaultsクラスを使用すると、アプリケーションまたはユーザーデータに関連する設定とプロパティを保存できます。

The objects will be saved in what is known as the iOS “defaults system”. 
The iOS defaults system is available throughout all of the code in your app, and any data saved to the defaults system will persist through application sessions.This means that even if the user closes your application or reboots their phone, the saved data will still be available the next time they open the app!
于 2012-11-01T09:28:03.973 に答える