iPhone, как я могу оценить, равно ли текстовое свойство определенной строке? - PullRequest
1 голос
/ 29 сентября 2010

У меня есть следующая заданная константа define'd.

#define EndDateNotSpecified "None"

Но я не могу оценить это, я пробовал

if (btnEndDate.titleLabel.text != EndDateNotSpecified) {

и

if (btnEndDate.titleLabel.text isEqualToString:EndDateNotSpecified) {

У меня проблемы с компилятором.

Ответы [ 3 ]

1 голос
/ 29 сентября 2010

Вы пропустили @ для строки, не забудьте добавить это к каждой строковой константе:

#define EndDateNotSpecified @"None"
1 голос
/ 29 сентября 2010

В цели C вы должны вызвать метод в [], поэтому второй должен быть: if ([btnEndDate.titleLabel.text isEqualToString:EndDateNotSpecified]) {

Не используйте это, потому что это не всегда даст правильный результат, когда вы сравниваете только объект-указатель NSString

if (btnEndDate.titleLabel.text != EndDateNotSpecified) {

В общем, я думаю, что вы должны изучить базовый Objective-C, ваш код не похож на код obj-c. Нет [], нет @ "" для строки: (

1 голос
/ 29 сентября 2010

Закрыть, просто пропущены скобки вокруг вызова метода, например

if ([btnEndDate.titleLabel.text isEqualToString:EndDateNotSpecified]) {

И в будущем, как правило, полезно, если вы сообщите нам, в чем заключалась конкретная ошибка компилятора.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...