• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

ios - UITableViewCell - 更新 NSMutableDictionary 值

[复制链接]
菜鸟教程小白 发表于 2022-12-13 12:39:37 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我有 UITableViewController,它有类似推特的帖子和类似的按钮。我所做的是,如果成功尝试将喜欢的计数更新 + 1,则单击喜欢按钮时。除了更新部分之外,我做了上述所有方法。 我得到由于未捕获的异常'NSInternalInconsistencyException'而终止应用程序,原因:'-[__NSCFDictionary setObject:forKey:]: mutating method sent to immutable object'错误。

这是我的代码。

- (UITableViewCell *)tableViewUITableView *)tableView cellForRowAtIndexPathNSIndexPath *)indexPath{
    FeedTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier"Cell" forIndexPath:indexPath];


    NSDictionary *feedList = [liveFeeds objectAtIndex:indexPath.row];
//liveFeeds is NSMutableArray

cell.likeCount.text = [feedList objectForKey"likes"];
cell.like.tag = indexPath.row;

    [cell.like addTarget:self actionselector(likeClicked forControlEvents:UIControlEventTouchUpInside];
}

-(void) likeClickedUIButton*)sender{

//Here im using AFNetworking and getting JSON response.
//After that im doing following to update the like

NSMutableDictionary* feedList = [liveFeeds objectAtIndex:sender.tag];

            NSString *oldLike = [feedList objectForKey"likes"];
            int newLike = [oldLike intValue] + 1;
            NSString *strFromInt = [NSString stringWithFormat"%d",newLike];

            NSLog(@"updated like %@",strFromInt); // up to this it works

            [feedList setObject:strFromInt forKey"likes"]; // in here it get crashe

            [self.tableView reloadData];

}

我想做的是。 liveFeeds 使用 Like Count 更新数组并重新加载表。我做错了吗?或者有什么简单的方法可以做到这一点?



Best Answer-推荐答案


[liveFeeds objectAtIndex:sender.tag] 很可能是 NSDictionary,而不是 NSMutableDictionary。所以你不能改变它的内容。

使用 [liveFeeds objectAtIndex:sender.tag] 的内容构建 feedlist :

NSMutableDictionary* feedlist = [NSMutableDictionary dictionaryWithDictionary:[liveFeeds objectAtIndex:sender.tag]]

关于ios - UITableViewCell - 更新 NSMutableDictionary 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34880662/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap