zoukankan      html  css  js  c++  java
  • UITableView 滚动时使用reloaddata出现 crash'-[__NSCFArray objectAtIndex:]: index (1) beyond bounds (0)' Crash

    例子:

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

    static NSString *CellIndentifier = @"Account";
        UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIndentifier];
        
        //adjust the height for cell
        CGRect cellFrame = [cell frame];
        cellFrame.size.height = self.bgImageView.frame.size.height/2;
        
        //first time load the content
        if (cell == nil) {
            cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIndentifier] autorelease];
        
        。。。。。。。。。

    else

      //这里主要是为了在滚动屏幕时候解决屏幕内容显示错误。但是却引发了这个问题,操作为向一个方向快速反复滚动就很容易crash,应该是reload后因为使用了dequeueReusableCellWithIdentifier导致table

    无法得到正确的应当显示的cell内容和个数,导致出错。

        [viewtable  reloadData];

    解决方法:

    static NSString *CellIndentifier = @"Account";
        UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIndentifier];
        
        //adjust the height for cell
        CGRect cellFrame = [cell frame];
        cellFrame.size.height = self.bgImageView.frame.size.height/2;
        
        //first time load the content
        if (cell == nil) {
    cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIndentifier] autorelease];
        
    //创建所有的子视图

    }else

    {

    //移除所有的子视图

     while ([cell.contentView.subviews lastObject] != nil)
                    {
                        [(UIView*)[cell.contentView.subviews lastObject] removeFromSuperview];
                    }
    //重新添加子视图
     

    }

    这样做的效果上看不会因为删除子视图然后出现空白等待加载的不良效果

  • 相关阅读:
    idea创建项目报错(Maven execution terminated abnormally (exit code 1) )解决方案
    mysql连接查询
    mysql特殊使用
    eclipse发布web
    eclipse启动web应用 报错
    hdu 2018
    atom安装插件失败 latex
    牛腩新闻发布系统——解惑:VS2012验证码加载不出来
    IIS的安装和配置
    InoReader——网页无法打开
  • 原文地址:https://www.cnblogs.com/lisa090818/p/3388165.html
Copyright © 2011-2022 走看看