我有一个表视图,我设置所有奇数单元格高度= 0,在奇数单元格中我有一些标签。当它显示表格视图时,奇数单元格中的标签出现在偶数单元格中。有没有办法让标签消失?这个问题发生在ios 6中 P / S: 在ios 7中:它工作正常。 我已经有了方法:[tableView beginUpdates]; [tableView endUpdates];
感谢。
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
// show odd row
if (selectedRow == indexPath.row) return 78;
// hide odd row and show even row
if (indexPath.row %2 ==0){
return 88;}
else{
return 0;}
}
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
if (indexPath.row%2 == 0){
//user click on even row -> display the next row
selectedRow = indexPath.row+1;
[tableView beginUpdates];
[tableView endUpdates];
}
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
int index = indexPath.row / 2;
if (indexPath.row %2 ==0){
static NSString *CellIdentifier = @"PhraseViewCell";
PhraseCellVietnamese *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
NSString *phrase = [[phrases objectAtIndex:index] objectForKey:@"vietnamese"];
NSNumber *checkFavorite = [[phrases objectAtIndex:index] objectForKey:@"favorite"];
NSNumber *phraseId =[[phrases objectAtIndex:index] objectForKey:@"_id"];
[cell SetInfo:phrase :checkFavorite.intValue :phraseId.intValue];
return cell;
}
else{
static NSString *CellIdentifier = @"PinyinViewCell";
PinYinViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
NSString *pinyin = [[phrases objectAtIndex:index] objectForKey:@"pinyin"];
NSString *chinese = [[phrases objectAtIndex:index] objectForKey:@"chinese"];
NSString *voice = [[phrases objectAtIndex:index] objectForKey:@"voice"];
[cell setInfo:pinyin :chinese :voice];
return cell;
}
}
答案 0 :(得分:23)
[cell setClipsToBounds:YES];在cellForRowAtIndexPath
中为我工作。希望你找到解决方案。
答案 1 :(得分:4)
阅读用户2799736后,我改变了 剪辑子视图 在.xib文件中为YES。 为我工作。