ios - 通过 UITableView 部分重置值
问题描述
我正在构建一个跟踪我的购买的个人预算应用程序。我有一个NSDictionary
看起来NSArray
像这样:
{
46 = (
{
DATE = "11/14/2019";
ID = 21;
PLACE = Kroger;
PRICE = "23.32";
},
{
DATE = "11/14/2019";
ID = 22;
PLACE = Walmart;
PRICE = "12.54";
}
);
47 = (
{
DATE = "11/18/2019";
ID = 23;
PLACE = Cinco;
PRICE = "65.32";
}
);
}
中的键NSDictionary
是通过strftime
使用来确定的%W
。基本上我有一个每周可以花费的限制(即190),我希望每个titleForHeaderInSection:
都有一个由每个键中的每个字段确定的总值PRICE
。
我目前在应用程序上有以下内容:
下面计算NSDictionary
上面列出的值以及总值:
注意:arrFoodInfo只是没有周数的NSDictionary
条目
for (NSDictionary *dict in self.arrFoodInfo) {
NSString *date = [dict objectForKey:@"DATE"];
[totalPrices addObject:[dict objectForKey:@"PRICE"]];
for (NSString *price in totalPrices) {
if ([totalPrices containsObject:price]) {
_sumPrices += [price floatValue]; // Calculates total value
[totalPrices removeObject:price];
}
}
NSDateFormatter *SDF = [[NSDateFormatter alloc]
init];
[SDF setDateStyle:NSDateFormatterMediumStyle];
[SDF setDateFormat:@"MM/dd/yyyy"];
NSDate *convertedDate = [SDF dateFromString:date];
NSDateComponents *dateComponents = [calendar components:NSCalendarUnitYear | NSCalendarUnitWeekOfYear fromDate:convertedDate];
NSInteger week = dateComponents.weekOfYear;
NSInteger index = week;
NSNumber *key = @(index);
NSMutableArray *weekArray = weeksDictionary[key];
if (!weekArray) {
weekArray = [NSMutableArray array];
weeksDictionary[key] = weekArray;
}
[weekArray addObject:dict];
}
目前,我得到了每个部分的总数,PRICE
但每个部分的总值应该不同。确定这一点的最佳选择是什么?
解决方案
推荐阅读
- javascript - Tampermonkey 中的状态操作
- azure-active-directory - 如何从用户管理的身份显式授予对 AAD 应用程序注册的访问权限?
- c# - 从 DI 容器中注册具有多种类型的通用动作过滤器
- gnome - 如何重新禁用 gnome-shell 40 中的热角?
- javascript - 响应式导航栏:菜单不会消失(CSS 和 JS)
- powershell - getElementsByTagName 显示异常错误
- ios - 如何在 OTA 安装 IPA 文件期间绕过完整性错误?
- css - 如何将背景图像的特定(x,y)点居中到包含它的 CSS 元素的定义(x',y')坐标?
- java - 我可以在 Firebase 中进行服务器端表单验证吗?
- c# - 通过数据绑定更新 DataGrid“总数量”单元格