标题和NSLog未在cellForRowAtIndexPath中运行

时间:2015-01-23 19:23:08

标签: ios objective-c cocoa-touch nslog

我似乎无法理解为什么我无法显示我的手机的标题和副标题。我尝试通过NSLog()获取字符串对象,但除了成功打印测试对象的内存位置的NSLog()之外,我没有收到任何输出({{1数组中的Stack

这是我的array_Stacks方法:

cellForRowAtIndexPath:

注意:" cp"是我的调色板对象,并返回一个- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"SimpleCell" forIndexPath:indexPath]; if (!cell) { cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"SimpleCell"]; } NSString *cell_Title = [[array_Stacks objectAtIndex:[indexPath row]] title]; NSString *cell_Subtitle = [[array_Stacks objectAtIndex:[indexPath row]] subject]; NSLog(@"%@", cell_Title); NSLog(@"%@", [array_Stacks objectAtIndex:[indexPath row]]); NSLog(@"%@", cell_Subtitle); cell.textLabel.text = cell_Title; cell.textLabel.tintColor = [cp color_master_tan]; cell.detailTextLabel.text = cell_Subtitle; cell.detailTextLabel.tintColor = [cp color_master_tan]; //cell.imageView.image = [UIImage imageNamed:@"asset_Cell"]; return cell; } 对象。

这是Stack.m

UIColor

2 个答案:

答案 0 :(得分:1)

您正在@""中将字符串设置为Stack initWithTitle:...

    title = ttl;
    subject = sbj;
    creator = ctr;
    array_FlashCard = arr;

    title = [[NSString alloc] init]; // Throw away previous value; assign new empty string.
    subject = [[NSString alloc] init]; // Throw away previous value; assign new empty string.
    creator = [[NSString alloc] init]; // Throw away previous value; assign new empty string.
    array_FlashCard = [[NSMutableArray alloc] init]; // Throw away previous value; assign new empty array.

答案 1 :(得分:-1)

你需要明白的是,在大多数情况下,这只是一个小错误。所以,你必须检查以下内容。

  1. 是否正确设置了委托和数据源。并设置断点是否正确调用委托方法。
  2. 数据源是否未返回零对象。因为如果数据源不包含任何对象,则不会调用cellForRowAtIndexPath
  3. 希望这有助于并相信我这不是一件严肃的事情。你可能会错过一些东西。

    奇怪的是,您已经分配了titlesubjectcreatorarray_FlashCard。但是你再次初始化它们就会变空了。