如果声明似乎不起作用

时间:2012-05-07 16:07:15

标签: ios if-statement uinavigationcontroller tableview

date.name关于此应用时,我的if语句有点问题新闻项目: 有人可以帮助我吗?

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    MoreMenu *data = [self.fetchedResultsController objectAtIndexPath:indexPath];

    if ([data.name compare:@"about this app"]) {
        NSLog(@"About this app : %@", data.name);
    } else {
        NSLog(@"News item : %@", data.name);
    }
}

3 个答案:

答案 0 :(得分:4)

尝试:

if ([data.name isEqualToString:@"about this app"])

答案 1 :(得分:4)

与C标准函数strcmp()的模式类似,-compare:在相等的情况下返回0。尝试

if ([data.name isEqualToString:@"about this app"]) {
    // code
}

if (![data.name compare:@"about this app"]) {
    // code
}

代替(首选符号)。

答案 2 :(得分:1)

如果要检查是否相等,可能需要使用:

isEqualToString:代替compare: