当前位置: 代码迷 >> Iphone >> tableView 下拉刷新,卡。该如何解决
  详细解决方案

tableView 下拉刷新,卡。该如何解决

热度:213   发布时间:2016-04-25 05:50:50.0
tableView 下拉刷新,卡。
这个问题困扰两个星期了,求大神帮忙解决。我自己写了一个cell继承了UITableViewCell,然后在cell里面加了贴图和标签,以达到项目需要的效果。问题来了。。。在真机测试的时候,tableView往下拖,刷新新的cell会卡。而且调试发现,不停的上拉下拉。内存会不断增加。上代码

- (ChatCustomCell1 *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
    static NSString *identifier = @"tableViewIdentifier";
    ChatCustomCell1 *cell = [tableView dequeueReusableCellWithIdentifier: identifier];
    if(cell == nil)
    {
        [self.cellNib instantiateWithOwner:self options:nil];
        cell = tmpCell;
        self.tmpCell = nil;
    }
    NSInteger row = [indexPath row];
    ChatMessage *chatMessage = (ChatMessage *)[chatMessageArray objectAtIndex:row];
    cell.messageLable.text = chatMessage.message;
    
    // 设置cell
    if (chatMessage.fromMyself)
    {
        UIImage *image = [UIImage imageNamed:@"online.png"];
        cell.leftFaceImageView.image = image;
        [image release];
        [cell.leftTimeLable setText:chatMessage.messageTime];
        UIImage *image1 = [UIImage imageNamed:@"bubule2"];
        cell.messageBackImage.image = image1;
        [image1 release];
        AppDelegate *myApp = [[UIApplication sharedApplication] delegate];
        cell.leftNameLable.text = myApp.loginName;
    }
    else
    {
        UIImage *image = [UIImage imageNamed:@"online.png"];
        cell.rigthFaceImageView.image = image;
        [image release];
        
        cell.rightTimeLable.text = chatMessage.messageTime;
        UIImage *image1 = [UIImage imageNamed:@"bubule1"];
        cell.messageBackImage.image = image1;
        [image1 release];
        cell.rightNameLable.text = chatMessage.senderName;
    }
    cell.messageLable.textAlignment = NSTextAlignmentCenter;
    cell.messageLable.font = [UIFont systemFontOfSize:[UIFont systemFontSize]];
    [cell.messageLable setNumberOfLines:0];
    return cell;
}

------解决方案--------------------
你可以看下提升Tableview性能方面的知识,加载数据可以绑定到你子类化cell的那个类中去
  相关解决方案