Objective c 如何从故事板加载原型单元?
有没有一种方法可以加载原型单元以及故事板中定义的任何IBOutlet连接 更新 我想用UICollectionViewCell对该单元进行单元测试,因此希望在UIViewController上下文之外加载它 实际上,与您可以从nib加载自定义视图的方式相同,您可以指定其文件的所有者并设置其IBOutlets。通常您可以使用UITableViewController或UITableView。然后还应创建UITableViewCell类。创建UITableViewCell类后,转到“UIStoryboard”,选择单元格: 然后在Identity Inspector内设置UITableViewCell类: 现在将元素添加到UITableViewCell并将它们与类连接 现在将CellIdentifier添加到属性检查器中: 不可以访问UITableViewController或UIViewController,其中包含UITableViewDelegate方法并按如下方式调用单元格不要忘记导入ViewController顶部的UITableViewCell类: 编辑:据我所知,除了在ViewController中创建原型UITableViewCells外,不可能从故事板的任何位置使用原型UITableViewCells。 我还没有在单元测试中尝试过这一点,但您可以轻松地将自定义UITableViewCell放入单独的nib中 要在视图控制器中使用它,您需要在TableView中注册单元格Objective c 如何从故事板加载原型单元?,objective-c,uikit,ocunit,sentestingkit,Objective C,Uikit,Ocunit,Sentestingkit,有没有一种方法可以加载原型单元以及故事板中定义的任何IBOutlet连接 更新 我想用UICollectionViewCell对该单元进行单元测试,因此希望在UIViewController上下文之外加载它 实际上,与您可以从nib加载自定义视图的方式相同,您可以指定其文件的所有者并设置其IBOutlets。通常您可以使用UITableViewController或UITableView。然后还应创建UITableViewCell类。创建UITableViewCell类后,转到“UIStoryb
UINib *nib = [UINib nibWithNibName:@"ABCNameOfYourNibCell" bundle:nil];
[self.tableView registerNib:nib forCellReuseIdentifier:@"myCustomCell"];
然后在cellForRowAtIndexPath中使用如下单元格:
出于测试目的,您应该能够:
ABCNameOfYourNibCell *testCell =
[[ABCNameOfYourNibCell alloc] initWithStyle: UITableViewCellStyleDefault reuseIdentifier:nil];
如果您需要测试重用行为,您应该在此处设置一个reuseIdentifier,并在单元格上调用prepareForReuse。您应该将IBOutlets连接到UITableViewCell自定义子类的接口。您可以更具体一点吗?您的意思是,如果原型单元作为IBOutlet连接到视图控制器?对不起,最后一个问题,您想从另一个UIViewController加载单元,这应该是你想要的不相关的答案,因为问题是如何在单独的测试类中加载在故事板中创建的原型单元。我认为答案是“否”,唯一的方法是将其声明为独立的nib,对吗?
static NSString *CellIdentifier = @"myCustomCell";
ABCNameOfYourNibCell *cell =
[tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
ABCNameOfYourNibCell *testCell =
[[ABCNameOfYourNibCell alloc] initWithStyle: UITableViewCellStyleDefault reuseIdentifier:nil];