Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 为什么dequeueReusableCellWithIdentifier返回nil_Ios_Iphone_Ios5_Storyboard - Fatal编程技术网

Ios 为什么dequeueReusableCellWithIdentifier返回nil

Ios 为什么dequeueReusableCellWithIdentifier返回nil,ios,iphone,ios5,storyboard,Ios,Iphone,Ios5,Storyboard,在我的项目中,我有一个带有NavigationController、ViewController和TableViewController的故事板,我试图创建自定义原型单元,但dequeueReusableCellWithIdentifier始终返回零。我做错了什么? 同时添加数据源 注释这两行,因为您要尝试两次推入代码,一次是使用故事板进行尝试,另一次是使用编码 - (IBAction)searchClick:(id)sender { //CNCarTableControl

在我的项目中,我有一个带有
NavigationController
ViewController
TableViewController
的故事板,我试图创建自定义原型单元,但
dequeueReusableCellWithIdentifier
始终返回零。我做错了什么? 同时添加数据源

注释这两行,因为您要尝试两次推入代码,一次是使用故事板进行尝试,另一次是使用编码

   - (IBAction)searchClick:(id)sender {
        //CNCarTableController *car = [[CNCarTableController alloc]init];
        //[self.navigationController pushViewController:car animated:TRUE];
    }
按照以下步骤操作:-

  • 创建一个新的xib文件,将其命名为“
    CNTransportCell
  • 在该nib文件中拉入一个
    tableViewCell
    。对其进行定制,并确保使用唯一的重用标识符(在您的情况下-
    TransportCell
  • 在Identity Inspector中,为其分配
    CNTransportCell
  • 控件从标签拖动到
    CNTransportCell.h
    文件 到
    IBOutlets
  • 使用
    tableView:cellforrowatinedexpath:
    中的方法
    registernb:forCellReuseIdentifier:
    ,看起来类似于-

    static NSString *CellIdentifier = @"TransportCell";
    
    [tableView registerNib:[UINib nibWithNibName:@"CNTransportCell" bundle:nil] forCellReuseIdentifier:CellIdentifier];
    CNTransportCell *cell = [self.tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    
  • 更新编辑: 好的,如果您不需要外部nib,请执行以下操作:-

  • 只需从故事板文件中选择
    CNCarTableController
  • 去身份检查员那里
  • 并将情节提要id设置为“
    CNCarTableController
  • 现在,更改方法
    searchClick:(id)sender
    ,如下所示:

    CNCarTableController *myViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"CNCarTableController"];
    
    [self.navigationController pushViewController:myViewController animated:TRUE];
    

  • 希望你能理解。

    你犯了一个简单的错误。您没有将表视图
    数据源
    连接到
    表视图控制器

    请在问题本身中包含代码的相关部分,而不是链接到可下载的文件。@DavidRönnqvist在这里我没有得到正确的答案,因为我决定粘贴与源代码的链接code@Abbath检查我的回答我看过你的密码,我不知道那里出了什么问题,所以重新开始吧,我想这里面有些问题project@Abbath:检查我的最新答案。这是我的答案。我明白了,以及如何创建正确的结构与按钮点击->tableView?你们到底想做什么?我需要的应用程序,我的根视图控制器与按钮和点击后,我需要打开tableViewwindow@Abbath:跟我走。它起作用了!你能解释一下他用tableview创建了故事板吗?那么为什么我们要创建单独的xib来加载nib???@Yohan:因为他有自定义的UITableViewCell类!!!谢谢,它正在工作:)