作者tref (MFDA)
看板MacDev
标题[问题] Custom Cell的几个问题
时间Tue May 15 08:19:21 2012
各位大大,小弟想请教2个问题:
1.当我 Custom Cell 时,但若到 DetailViewController 去修改Array的内容後 ,
返回上一页 Cell 显示的却还是修改之前的内容,有确认Array的内容无误
aArray、bArray...等皆为NSMutableArray,请问到底是那里出错了??
2.当Cell资料较多时,超出一个页面所能呈现出的资料,EX:超过21笔 ,将画面
上下卷动会出现其他资料没错,但资料的排序会乱掉,点选乱掉的资料进入
DetailViewController也与Cell所呈现的资料不相符
请问各位到底是什麽问题?找不出原因苦恼中.....
谢谢
Code如下:
- (void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
[self.tableView reloadData];
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"Cell";
//增加LABEL
UILable *aLabel = [[UILabel alloc] initWithFrame:CGRectMake(105.0, 10, 125, 22.0)];
[aLabel setText:[NSString stringWithFormat:@"%@",[aArray objectAtIndex:indexPath.row]]];
UILable *bLabell = [[UILabel alloc] initWithFrame:CGRectMake(500.0,10.0, 125, 22.0)];
[bLabell setText:[NSString stringWithFormat:@"%@",[bArray objectAtIndex:indexPath.row]]];
UILable *cLabel = [[UILabel alloc] initWithFrame:CGRectMake(360.0, 10, 125, 22.0)];
[cLabel setText:[NSString stringWithFormat:@"%@",[cArray objectAtIndex:indexPath.row]]];
UILable *dLabel = [[UILabel alloc] initWithFrame:CGRectMake(230.0, 10, 125, 22.0)];
[dLabel setText:[NSString stringWithFormat:@"%@",[dArray objectAtIndex:indexPath.row]]];
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:CellIdentifier];
[[cell contentView]addSubview:aLabel];
[[cell contentView]addSubview:bLabell];
[[cell contentView]addSubview:cLabel];
[[cell contentView]addSubview:dLabel];
}
return cell;
}
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 111.241.181.12
1F:推 appleway:U doesn't reuse the labels you add to cells 05/15 09:20
2F:→ tref:有试过将addSubView加到cell==nil的回圈外,但会造成Label重 05/15 09:52
3F:→ tref:叠,原本的Label并不会清除,请问有什麽方法吗?谢谢 05/15 09:54
4F:推 ChonPiggy:第一个问题是用 reload 还是 loadview 解决..有点忘了 05/15 10:27
5F:→ ChonPiggy:阿..reloadData ? 05/15 10:28
6F:→ ChonPiggy:应该在 didSelect 里面也要 reload 一次吧 上面没这段 05/15 10:29
7F:推 iwayne:连结tableView的MutableArray你有处理了,但tableView也要 05/15 12:56
8F:→ iwayne:reload..如果你不想reload,也可以直接call tableview的函 05/15 12:57
9F:→ iwayne:式,把tableview某个item删掉。(这样是比较有效率的,但前 05/15 12:57
10F:→ iwayne:提是item不要太多,不然reload是比较快的。 05/15 12:58
11F:→ tref:已解决,谢谢各位 05/15 13:24