小编scu*_*eve的帖子

dequeueReusableCellWithIdentifier不返回我的自定义类型的单元格

我正在使用带有UITableViewController和UITableViewCell子类的ios5故事板.我不想在视图的storyboard设计器中设计单元格的可视元素,因为我想使用UITableViewCell的可重用子类(特别是TDBadgedCell).

我在storyboard设计器中设置了我的单元标识符,只要我没有设置TDBadgedCell独有的任何属性,所有行都在UITableView中正确加载.如果我设置了badgeStringTDBadgedCell唯一的属性,我会得到一个例外.我缩小了dequeueReusableCellWithIdentifier:没有返回TDBadgedCell类型的单元格.

我只是用UITableViewController来运行它.我有一个UIViewController与嵌入式UITableView以相同的方式设置,这不是一个问题.有任何想法吗?

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath*)indexPath
{
static NSString *CellIdentifier = @"PhoneNumberCell";
TDBadgedCell *cell = (TDBadgedCell*)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];

if (cell == nil) {
    cell = [[TDBadgedCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
}

if ([cell isKindOfClass:[TDBadgedCell class]])
{
    NSLog(@"It is TDBadgedCell");
}
else
    NSLog(@"It is NOT TDBadgedCell");
Run Code Online (Sandbox Code Playgroud)

iphone storyboard uitableview ios5

5
推荐指数
1
解决办法
4180
查看次数

标签 统计

ios5 ×1

iphone ×1

storyboard ×1

uitableview ×1