【发布时间】:2018-11-02 23:42:58
【问题描述】:
如何检查我添加到NSMutableArray 中userDefaults 的字符串。我试过用:
[arrayOfSavedStrings containsObject:currentString];
但这会返回 false。
如何使用谓词或 for 循环来获取此值?
每次调用 checkForSavedString 时,我都会尝试将值保存到用户默认值的数组中。
- (void)checkForSavedString {
NSString *stringImAdding = self.stringProperty;
NSMutableArray *arrayOfStrings = [NSMutableArray array];
[arrayOfStrings addObject:stringImAdding];
NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
[userDefaults setObject:arrayOfStrings forKey:@"SavedStrings"];
}
我正在尝试检查我在checkForSavedString 方法中保存到userDefaults 的值是否存在于数组中。
self.stringProperty = self.stringFromSomewhereElse;
NSString *currentString = [NSString stringWithFormat:@"%@", self.stringProperty];
NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
NSArray *arrayOfSavedStrings = [userDefaults objectForKey:@"SavedStrings"];
if ([arrayOfSavedStrings containsObject:currentString]) {
// my code
}
【问题讨论】:
-
至少使用
arrayForKey而不是objectForKey。 -
您想在
registrationFormSubmission中添加或替换appFormId吗?你为什么要stringWithFormat? -
@vadian +1 arrayForKey
标签: objective-c nsstring nsarray nsuserdefaults nspredicate