单元格文本不会出现在iOS 7 TableView中

单元格文本不会出现在iOS 7 TableView中,ios,uitableview,Ios,Uitableview,我尝试了很多东西,但我完全不知所措。我的文本未显示在TableView中单元格的默认文本标签中。奇怪的是其他一切都起作用。我的意思是,我可以读取和解析数据源XML,我可以创建适当数量的第5行,甚至可以让单元格包含文本数据。我知道这一点,因为当我使用NSLog时,它显示了这一点。我甚至使用didSelectRowAtIndexPath和NSLog@%@,cellText进行了双重检查;日志中有正确的文本!所以单元格文本标签包含了我想要的文本,但它仍然没有出现在屏幕上。相反,我只得到5个空白行,每个

我尝试了很多东西,但我完全不知所措。我的文本未显示在TableView中单元格的默认文本标签中。奇怪的是其他一切都起作用。我的意思是,我可以读取和解析数据源XML,我可以创建适当数量的第5行,甚至可以让单元格包含文本数据。我知道这一点,因为当我使用NSLog时,它显示了这一点。我甚至使用didSelectRowAtIndexPath和NSLog@%@,cellText进行了双重检查;日志中有正确的文本!所以单元格文本标签包含了我想要的文本,但它仍然没有出现在屏幕上。相反,我只得到5个空白行,每个行都是可选的,当我选择它们时,它们将在NSLog中显示正确的文本,而不是在屏幕上

我尝试了以下修复:调整backgroundColor和textColor nope,尝试我可以在网上找到的不同示例代码nope,使用ViewController而不是TableViewController nope,删除文件并重新构建它们nope,甚至只使用此代码创建新项目以隔离代码nope。每次都是空白!我不知道该怎么办

下面是我用来在tableview中获取和显示数据的代码:

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
    return 1;
}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
    return [app.listArray count];

}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *CellIdentifier = @"Cell";

UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];

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

theList = [app.listArray objectAtIndex:indexPath.row];

cell.textLabel.text = theList.name;

NSLog(@"%@",cell.textLabel.text);
NSLog(@"%@",theList.name);

return cell; 
}

我假设这是一个新的普通项目,没有任何其他可能干扰的东西。您使用NSLog@%@,cell.textLabel.text检查文本是否已填充,您验证了背景色和前景色是否不同。还有一件需要检查的事情是透明度/Alpha。确保将其设置为1

如果是在模拟器上,请尝试在设备上进行测试。如果无法在设备上进行测试,请尝试不同的模拟器设备,以排除模拟器故障的可能性


另外,尝试将标签文本硬编码为@Abcdef,以确保罪魁祸首不是您试图显示的数据。

我也遇到了同样的问题,但问题的答案是单元格右侧的连接检查器。对于ContentView,需要将插座设置为accessoryView。把它拖到牢房里。别难过,我也把头发拔了


我正在使用Xcode7测试版和Swift

像这样尝试。看看我是如何编写CellForRowatineXpath方法的

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
    return 1;
}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
    return [listArray count];

}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *CellIdentifier = @"Cell";

UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];

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


 [cell.titleLabel setText:[listArray objectAtIndex:indexPath.row]];

NSLog(@"%@",cell.textLabel.text);
NSLog(@"%@",theList.name);

return cell; 
}

谢谢你的建议,这是数据问题。我试着像你推荐的那样用@Test硬编码标签,结果成功了。至于一个模拟器故障,我忘了提到我在一个设备上做了测试,问题仍然存在。也就是说,你对这些数据可能发生的情况还有其他想法吗?在你的帮助下,我找到了答案!数据可能在做什么?它可能太大了!果然,我将文本标签中的行数从1改为2,解决了这个问题:谢谢你,米雷克!