[cell viewWithTag:]中的标签始终返回nil

马基奇

我在这一基本问题上奋斗了一天多,这让我发疯了!有趣的是,我在其他屏幕上也有类似的东西,而且效果很好!我已经做了1000次,但从未经历过如此奇怪的事情。也许仅在iOS 8中这种行为?

在我非常简单的原型单元上,我有两个带有标签102和103的标签。但是当我想给它们设置文本时,它们始终为nil。

我仔细检查了标识符的正确性,并且该标签与情节提要中的标签相同。

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    NSString * identifier = @"secondReusableIdentifier";
    UITableViewCell *cell = (UITableViewCell *)[tableView dequeueReusableCellWithIdentifier:identifier];
    if (cell == nil){
        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:identifier];
    }

    for (UIView *subview in [cell subviews]) {
        NSLog(@"subview: %lu", subview.tag); // prints 0
    }

    UILabel * label1 = (UILabel *)[cell viewWithTag:102]; // returns nil
    UILabel * label2 = (UILabel *)[cell viewWithTag:103]; // returns nil
    if (self.items.count) {
        MyObject *obj = [self.items objectAtIndex:indexPath.row];
        label1.text = obj.someProperty;
        fuelPrice2.text = obj.someOtherProperty;
        }
    }
    return cell;

任何建议,将不胜感激。

奥尼克四世

在您的代码中,您正在创建一个新的单元,该单元与情节提要中的单元不同。

更改此方法:这是旧方法,或者当单元格通过代码或笔尖使用而您不使用情节提要时使用的方法。此代码表示。

      NSString * identifier = @"secondReusableIdentifier";
// If I have available a cell with this identifier: secondReusableIdentifier, let's go to use it.
UITableViewCell *cell = (UITableViewCell *)[tableView dequeueReusableCellWithIdentifier:identifier];
if (cell == nil){
 // If not, we create a new cell with this identifier. This methods is previous to storyboard, and this methods create a new cell, but does´t look in Storyboard if this identifier exist, or something like that.

    cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:identifier];
}

为此,从另一方面来说,当苹果公司启动情节提要时,框架便以这种方式增长:如果有一个免费的单元格,请使用它,否则,它将在情节提要中查找具有此标识符的单元格,并使用此信息。(您也可以通过代码和nib文件使用此方法,但是必须在之前注册该类。)。

 // Be sure than: "secondReusableIdentifier", it's its identifier in storyboard
  UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"secondReusableIdentifier" forIndexPath:indexPath];

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

viewWithTag始终在子视图控制器中返回nil

来自分类Dev

设置pointer.tag时,cell.contentView viewWithTag中的指针设置为nil(0)

来自分类Dev

cell.contentView.viewWithTag在静态tableView中不起作用

来自分类Dev

Not able to update the cell with new data as (cell!=nil)

来自分类Dev

在UITableView中加载数据时,cell.contentView.viewWithTag给出nil值

来自分类Dev

viewWithTag为UITableViewCell返回nil

来自分类Dev

每次我滚动cell.viewWithTag时都会出现致命错误,同时展开发现的nil

来自分类Dev

Cell Swift 中的 UITextView

来自分类Dev

解开可选值时,Customer Cell返回nil

来自分类Dev

从像{col1:[cell,cell],col2:[cell,cell,cell]}之类的键列表对象在Svelte中创建表。

来自分类Dev

iOS:使用自定义UITableViewCell与使用Cell viewWithTag?

来自分类Dev

VBA清除CELL中的字符

来自分类Dev

点击UITableView Cell时隐藏标签

来自分类Dev

NSClassFromString()始终返回nil

来自分类Dev

URLForUbiquityContainerIdentifier始终返回nil

来自分类Dev

manifestViewController()始终返回nil

来自分类Dev

在Cython Cell Magic中调用cdef函数

来自分类Dev

python闭包中的cell_contents

来自分类Dev

Mat-cell Angular 8中的if if else

来自分类Dev

初始化UICollectionViewCell时viewWithTag返回nil

来自分类Dev

自定义UICollectionViewCell中的UIImageView始终返回nil

来自分类Dev

向下滚动时,不再可以通过[cell.contentView viewWithTag]访问UITableViewCell元素

来自分类Dev

为什么cell.ImageView?.image如果通过图像则为nil?与Swift中的可选选项混淆

来自分类Dev

无法使用(cell!= nil)的新数据更新单元格

来自分类Dev

我uitableview(cell = nil)总是不打电话吗?

来自分类Dev

NSDateFormatter dateFromString始终返回nil

来自分类Dev

始终返回nil的Clojure函数

来自分类Dev

NSDateFormatter dateFromString始终返回nil

来自分类Dev

firebase uid始终返回nil

Related 相关文章

  1. 1

    viewWithTag始终在子视图控制器中返回nil

  2. 2

    设置pointer.tag时,cell.contentView viewWithTag中的指针设置为nil(0)

  3. 3

    cell.contentView.viewWithTag在静态tableView中不起作用

  4. 4

    Not able to update the cell with new data as (cell!=nil)

  5. 5

    在UITableView中加载数据时,cell.contentView.viewWithTag给出nil值

  6. 6

    viewWithTag为UITableViewCell返回nil

  7. 7

    每次我滚动cell.viewWithTag时都会出现致命错误,同时展开发现的nil

  8. 8

    Cell Swift 中的 UITextView

  9. 9

    解开可选值时,Customer Cell返回nil

  10. 10

    从像{col1:[cell,cell],col2:[cell,cell,cell]}之类的键列表对象在Svelte中创建表。

  11. 11

    iOS:使用自定义UITableViewCell与使用Cell viewWithTag?

  12. 12

    VBA清除CELL中的字符

  13. 13

    点击UITableView Cell时隐藏标签

  14. 14

    NSClassFromString()始终返回nil

  15. 15

    URLForUbiquityContainerIdentifier始终返回nil

  16. 16

    manifestViewController()始终返回nil

  17. 17

    在Cython Cell Magic中调用cdef函数

  18. 18

    python闭包中的cell_contents

  19. 19

    Mat-cell Angular 8中的if if else

  20. 20

    初始化UICollectionViewCell时viewWithTag返回nil

  21. 21

    自定义UICollectionViewCell中的UIImageView始终返回nil

  22. 22

    向下滚动时,不再可以通过[cell.contentView viewWithTag]访问UITableViewCell元素

  23. 23

    为什么cell.ImageView?.image如果通过图像则为nil?与Swift中的可选选项混淆

  24. 24

    无法使用(cell!= nil)的新数据更新单元格

  25. 25

    我uitableview(cell = nil)总是不打电话吗?

  26. 26

    NSDateFormatter dateFromString始终返回nil

  27. 27

    始终返回nil的Clojure函数

  28. 28

    NSDateFormatter dateFromString始终返回nil

  29. 29

    firebase uid始终返回nil

热门标签

归档