gpt4 book ai didi

ios - 将 TableView 中的数据存储到 NSUserDefaults

转载 作者:行者123 更新时间:2023-11-29 03:30:08 25 4
gpt4 key购买 nike

Tricks.h 文件

#import "Tricks.h"

@implementation Tricks

static NSMutableArray *trickList = nil;

+(NSMutableArray *)trickList
{
if(!trickList){
trickList = [[NSMutableArray alloc]init];

}
return trickList;
}

@end

Tricks.m 文件

@interface Tricks : NSObject

@property(strong, nonatomic) NSString *trickName;

向数组添加对象的方法

-(IBAction)saveAction:(id)sender
{

Tricks *trick = [[Tricks alloc]init];
trick.trickName = self.trickLabel.text;
[[Tricks trickList]insertObject:trick atIndex:0];
[self.navigationController popViewControllerAnimated:YES];
}

在 UITabelview 类的 .h 文件中,我引用了技巧类,但我确信这一行有错误。

@property (strong, nonatomic) Tricks *tricks;

在 cellForRow 方法中我存储数据

_trick = [[NSMutableDictionary alloc]initWithObjectsAndKeys:trick,nil];
NSUserDefaults *defaults=[NSUserDefaults standardUserDefaults];
[defaults setObject:_trick forKey:@"numberArray"];
[defaults synchronize];
NSLog(@"%@",_trick);

在viewDidLoad中UITableview的.m类中我想检索数据

if([[NSUserDefaults standardUserDefaults] objectForKey:@"numberArray"] != nil) {
_tricks = [[NSUserDefaults standardUserDefaults] objectForKey:@"numberArray"];

}

最佳答案

您正在丢失所有数据,因为您正在尝试保存 Tricks 那是 NSObject 并在您的应用程序被杀死时被销毁,它在应用程序运行时工作并且您创建了 NSUserDefaults 最好不要将其保存为 Tricks 对象,相反,您可以将数据存储为 NSDictionary 或 NSUserDefaults 可以存储的 NSString,以及何时要使用它,您可以使用保存的 NSDictionary 数据创建 Trick 对象。

编辑只有 NSData、NSString、NSNumber、NSDate、NSArray 或 NSDictionary 可以使用 NSUserDefaults 存储

关于ios - 将 TableView 中的数据存储到 NSUserDefaults,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19909069/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com