【发布时间】:2016-02-10 11:18:35
【问题描述】:
您好,我是 iOS 开发人员的新手。
我有UITableView 和UITextField。我在文本字段中设置了一些不同的值,每个文本字段的值存储在NSmutablearray 中,而不是在下一个屏幕中显示这个数组。显示的数组值是完美的。
但我的问题是当我切换回UITableView 屏幕并再次在UITextField 中设置新值并将这些UITextField 值存储在NSmutablearray 中时。但问题是新值被覆盖为旧值。但我希望这两个值都存储在NSArray。
这是我的屏幕截图
summaryvc 显示完美的数据。但是当我返回屏幕并选择其他项目而不是单击 placeorder.but 问题是我们无法在摘要屏幕中获取旧的选定项目。
这是将数组存储在 Nsuserdefault 中的按钮操作代码。 global.filteredArray 是我的 nsmutablearray.dic 值是我的字典。
这是我的数组值
{
counts = 1;
"m_drycleaning_price" = 12;
"m_id" = 3;
"m_imagename" = d;
"m_iron_price" = 16;
"m_name" = "Coat(Man)";
"m_wash_price" = 14;
"m_washiron_price" = 13;
total = 12;
}
AppDelegate *myAppDelegate = [[UIApplication sharedApplication] delegate];
[myAppDelegate.arrayCounts addObject:dictValues];
myAppDelegate.arrayCounts[indexPath.row][@"counts"] = [NSString stringWithFormat:@"%d",(int)value];
myAppDelegate.arrayCounts[indexPath.row][@"total"] = [NSString stringWithFormat:@"%d",(int)y];
- (IBAction)placeorder:(id)sender
{
NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
[userDefaults setObject:global.filteredArray forKey:@"def_orderarraylist"];
NSMutableArray *qualifiersArray = [NSMutableArray arrayWithArray:[userDefaults objectForKey:@"def_orderarraylist"]];
NSLog(@"qualifier array=%@",qualifiersArray);
[userDefaults synchronize];
}
请帮忙!
【问题讨论】:
-
你试过用nsuserdefaults存储吗?
-
正如 uma 所说,您必须将 nsarray 存储到 nsuserdefaults 中。那么只有你会得到所有的价值。当您回到第一个屏幕时,数组将被初始化。所以你没有得到旧数据。
-
@uma yaa 我会尝试 nsuserdefault 但不能解决问题。
-
@Signare yaa 我不会得到旧数据
-
任何新的数据类型来保存新旧值请告诉我
标签: ios iphone uitableview uitextfield nsarray