被 cell 复用折磨惨了, iOS 大牛帮我看看怎么回事啊

2016-04-20 09:51:53 +08:00
 gugogo
被 cell 复用折磨惨了, iOS 大牛帮我看看怎么回事啊
http://pan.baidu.com/s/1mhNwNf6
2445 次点击
所在节点    问与答
16 条回复
dcty
2016-04-20 10:31:38 +08:00
下了代码看了一下,想不明白现在的人为什么要这么写.
gugogo
2016-04-20 10:35:18 +08:00
@dcty 不是我写的 我只是想修改一下 但是突然遇到 bug 了 明明知道什么问题 但是无从下手 啊。。。。。。
jayzjj000
2016-04-20 10:40:34 +08:00
竟然还要手动去下代码。。。懒癌犯了不想下怎么办
anerevol
2016-04-20 10:45:55 +08:00
看了下,里面的代码是没有问题的啊,是被你改出来的问题?
a412739861
2016-04-20 10:48:12 +08:00
@jayzjj000 是啊,放 github 上多方便……
rulerstorm
2016-04-20 10:59:49 +08:00
这样问问题都有人理。。。 V 友真是耐心善良,赞
anerevol
2016-04-20 11:03:24 +08:00
MainTableViewCell 里面,注释掉[self showOrderNumbers:self.number];
- (IBAction)addButton:(id)sender {
self.number =[self.goodsNumber.text intValue];
self.number +=1;
self.plusBlock(self.number,YES);
// [self showOrderNumbers:self.number];
}

MainViewController 里面,-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 函数里面添加一行,大概在 139 行后
bself.shoppcartview.OrderList.objects = self.ordersArray;
[bself.shoppcartview updateFrame:self.shoppcartview.OrderList];
[bself.shoppcartview.OrderList.tableView reloadData];
// 添加下面这行
[bself.maintable reloadRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationNone];

然后你再想想你怎么改的代码,如果还不能明白的话,那我就爱莫能助了。
XVXVXXX
2016-04-20 11:07:48 +08:00
我跑了下 Demo ,好像没你那个 GIF 里面的复用问题? =。= 另外代码还是放 github 上吧
gugogo
2016-04-20 11:35:15 +08:00
@XVXVXXX
@a412739861
@anerevol
@dcty
@rulerstorm
不知道什么原因 github 一直上传不了 只能用 osChina 了
https://git.oschina.net/gugogo/shopCart.git
gugogo
2016-04-20 11:35:51 +08:00
gugogo
2016-04-20 11:42:18 +08:00
lxian2
2016-04-20 11:47:46 +08:00
什么问题啊,运行挺正常的额
gugogo
2016-04-20 11:52:16 +08:00
@lxian2 选中一个商品 向上拖动 然后就那个数值就没了 你看下载那个 gif 文件
DSKcpp
2016-04-20 11:52:22 +08:00
把商品数量写到 model 里
你现在等于没有保存
lxian2
2016-04-20 12:12:55 +08:00
你用的 _dataArray 给 cell 当作 model, 可是在 cell.plusBlock 里面根本没有 update 这个 array

而且这个 OrderModel *model = [[OrderModel alloc]initWithDictionary:[item[@"goods"] objectAtIndex:indexPath.row]]; 这个 _dataArray 里面根本就没有 orderCount
lxian2
2016-04-20 12:14:52 +08:00
感觉你是吧东西弄混了 你的_dataArray 看起来是用来初始化 model 的(初始化商品信息),后面你就不应该用这个 _dataArray 了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/272446

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX