NULL ввод из текстового поля не будет NSLog? - PullRequest
0 голосов
/ 21 июля 2010

Я пытаюсь отладить свое приложение для iPhone (основной счетчик), и у меня есть функция «Перейти» для перехода к определенному номеру.При тестировании моего приложения я заметил, что при установке goto без добавления чего-либо в NSTextField оно ничего не возвращает.Не NULL, nil или что-то еще.NSLog ввод строки ввода даже не отображается в консоли.Нет пустого сообщения, нет NULL сообщения, ничего.Если вы хотите увидеть мой код, вот он:

- (void)alertView:(UIAlertView *)alertView didDismissWithButtonIndex:(NSInteger)buttonIndex {
 switch(buttonIndex) {
     case 0:
        break;
     case 1:
        NSLog(@"Method called");
        NSLog(@"%@", [[alertView textField] text]);
     if ([[alertView textField] text] != NULL) {
        count = [[[alertView textField] text] intValue];
        [label setText:[[alertView textField] text]];
     } else { 
        break;
     }
  }
}

«Метод вызван» всегда отображается, но следующая строка вообще не появляется в случае без ввода.

Заранее спасибо!

1 Ответ

1 голос
/ 21 июля 2010

Он не появляется, потому что я подозреваю, что ему нечего показать!

Если вы действительно хотите показать это, несмотря ни на что:

NSLog(@"Alertview textfield = %@", [[alertView textField] text]);

Таким образомпокажет первую часть строки, а затем, если у нее будет какой-либо текст для отображения, он также добавит это

Я только что провел очень маленький тест и использую

NSString* text = @"";
NSLog(@"%@",text);

и ничего не отображается в консоли

:: edit ::

Если вы пытаетесь заставить оператор if работать, вы можете попробовать использовать что-то вроде

if(![[[alertView textField] text] isEqual:@""])

Whatкажется, что происходит то, что [[alertView textField] text] возвращает строку NSS @"", а не NULL или nil.

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