0

アプリケーション内に文字列を保存する必要がありますが、1つの文字列を保存するためだけにplistを作成したくないのですが、他に方法はありますか?ストーリーボードを使用しています。セグエを試しましたが、うまくいきませんでした

-(void) prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
   {
   if ([[segue identifier] isEqualToString: @"modal"])
   {
      ViewController *vc = (ViewController *)[segue destinationViewController];
      vc.subject = self.subject;
   }
}
4

2 に答える 2

1

「アプリケーション内に文字列を保存する必要がある」とはどういう意味ですか?文字列を宛先のViewControllerに渡しますか?

その場合は、宛先のViewControllerで新しいプロパティを定義できます(これがどれであるかがわかっていると仮定します)

@property (nonatomic, strong) NSString *myProperty;

その後

-(void) prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
   {
   if ([[segue identifier] isEqualToString: @"modal"])
   {
      [segue.destinationViewController setMyProperty:self.myProperty];
   }
}

アプリケーションのどこからでも文字列にアクセスできるようにしたい場合は、文字列をユーザーのデフォルトに非常に簡単に保存できます。

[[NSUserDefaults standardUserDefaults]setObject:myProperty forKey:@"myPropertyKeyName"];

あなたは後でそれを取り戻すことができます:

NSString *mySavedProperty= [[NSUserDefaults standardUserDefaults]stringForKey:@"myPropertyKeyName"];
于 2012-08-16T04:05:01.850 に答える
0

プロジェクト内の任意の場所で文字列を使用できる場合は、このようにextern変数を作成するだけです。

AppDelegate.hで

extern NSString *stringObject;

AppDelegate.mで

NSString *stringObject;

Uは、プロジェクト内のどこでもstringObjectを使用できます。

于 2012-08-16T04:09:44.170 に答える