0
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {

    static NSString *CellIdentifier = @"Cell";

    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell == nil) {
        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];


    }
    cell.selectionStyle = UITableViewCellSelectionStyleNone;
    cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;

    if(tableView==logTable)
    {

        lbl_description=[[UILabel alloc] init];
        [cell.contentView addSubview:lbl_description];
        lbl_description.backgroundColor = [UIColor clearColor];
        lbl_description.textColor=[UIColor darkGrayColor];
        lbl_description.font = [UIFont systemFontOfSize:18];



        lbl_date=[[UILabel alloc] init];
        [cell.contentView addSubview:lbl_date];
        lbl_date.backgroundColor = [UIColor clearColor];
        lbl_date.textColor=[UIColor lightGrayColor];
        lbl_date.font = [UIFont systemFontOfSize:14];

        lbl_description.frame=CGRectMake(10, 3, 300, 25);
        lbl_date.frame=CGRectMake(10, 23, 300, 25);//left



        lbl_description.text = [getName objectAtIndex:indexPath.row];
        lbl_date.text=[getStartDate objectAtIndex:indexPath.row];

    }

            return cell;
}

UITable がオーバーラップし、リロードしようとすると、動的に更新されません。リロードにテーブルのリロードを使用しますが、それでも解決策が得られません。前もって感謝します..

4

3 に答える 3

0

ループを削除するcell==nilと、重複は発生しません..

于 2012-09-29T09:55:09.547 に答える
0

cell= nil の if ループで lbl_date と説明ラベルを割り当ててみて、同じ if ループでそれをセルのコンテンツに追加してください。デリゲートメソッドが呼び出されるたびにラベルを追加する

于 2012-09-29T09:56:45.347 に答える
0

問題は、セルの内容がセルの高さよりも大きいことだと思います。

heightForRowAtIndexPathUITableViewの実装方法

- (CGFloat)tableView:(UITableView *)tv heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
    return 70.0f;
}
于 2012-09-29T09:50:44.637 に答える