Objective-c错误。 Xcode不确定代码有什么问题

时间:2013-12-18 22:50:43

标签: ios objective-c cocoa-touch

它给了我一个错误,说我在程序中错过了一个@end,意外的@,它想要在代码末尾的一个闭括号。

#import "TweetCell.h"
#import "AppDelegate.h"

@implementation TweetCell

@synthesize tweetLabel = _tweetLabel;

@synthesize userImage = _userImage;

@synthesize usernameLabel = _usernameLabel;

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

    TweetCell *cell = [tableView dequeueReusableCellWithIdentifier:indexPath];

    NSDictionary *currentTweet = [self.tweetsArray objectAtIndex:indexPath.row];

    NSDictionary *currentUser = [currentTweet objectForKey:@"user"];

    cell.usernameLabel.text = [currentTweet objectForKey:@"name"];

    cell.tweetLabel.text = [currentTweet objectForKey:@"text"];
    cell.userImage.image = [UIImage imageNamed:@"image.png"];

    AppDelegate *appDelegate = [[UIApplication sharedApplication] delegate];

    NSString *userName = cell.usernameLabel.text;

    if ([appDelegate.profileImages objectForKey:userName]) {
        cell.userImage.image = [appDelegate.profileImages objectForKey:userName];
    }
    else {
        dispatch_queue_t conccurentQueue = dispatch_get_global_queue(dispatch_get_global_queue, 0);
        dispatch_async(conccurentQueue, ^{
            NSURL *imageURL = [NSURL URLWithString:[currentUser objectForKey:@"image.png"]];

            __block NSData *imageData;

            dispatch_sync(conccurentQueue, ^{

                imageData = [NSData dataWithContentsOfURL:imageURL];

                [appDelegate.profileImages setObject:[UIImage imageWithData:imageData] forKey:userName];
        });

    });
    }
@end

3 个答案:

答案 0 :(得分:1)

你错过了一个结束括号。在@end

之前添加一个

答案 1 :(得分:0)

在方法结束时,像这样返回UITableViewCell

return cell;

答案 2 :(得分:0)

如何找到错误:

  • 全选
  • 复制
  • 粘贴

这将导致Xcode在重新格式化代码时重新格式化。

你应该注意到你的@end在此之后缩进了 - 这是因为你有一个没有匹配关闭的大括号。

添加支具。 (并且您可以使用命令-A,command-C,command-V序列再次检查。)

HTH