0

我需要在我的应用程序中保存一个字符串,但我不想创建一个仅用于保存 1 个字符串的 plist 有没有其他方法可以做到这一点?我使用故事板。我试过segue,但没有用

-(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

如果您可以在项目中的任何位置使用字符串,只需像这样创建一个外部变量。

在 AppDelegate.h

extern NSString *stringObject;

在 AppDelegate.m

NSString *stringObject;

您可以在项目中的任何位置使用 stringObject。

于 2012-08-16T04:09:44.170 回答