Возвращение UIColor вызывает сбои

Я пытаюсь использовать метод для преобразования строки в UIColor, как это:

-(UIColor *)getColorFromString:(NSString *)color {
    if ([color isEqual: @"red"]) {
        return [UIColor redColor];
    }
    else {
        return [UIColor blackColor];
    }
}

Используя это, вылетает мой твик. Пример:

self.view.backgroundColor = [self getColorFromString: @"red"]; //crashes

self.view.backgroundColor = [UIColor redColor]; //works

2 ответа

Вы забыли @ перед строкой:

self.view.backgroundColor = [self getColorFromString:@"red"];

Чтобы сравнить две строки, вы должны использовать isEqualToString функция.

-(UIColor *)getColorFromString:(NSString *)color {
    if ([color isEqualToString:@"red"]) {
        return [UIColor redColor];
    }
    else {
        return [UIColor blackColor];
    }
}
Другие вопросы по тегам