Как узнать, содержит ли UITextField определенный символ - PullRequest
2 голосов
/ 11 июля 2009

Как бы я сказал, что если в UITextField есть @ "-", что-то сделать Прямо сейчас мой код такой. Это не похоже на работу:

if (MyUITextField.text == @"-") {
    NSRange range = {0,1};
    [a deleteCharactersInRange:range];
    MyUITextField.text = MyUILabel.text;
}

Я знаю, что я делаю что-то очень не так с кодом. Пожалуйста, помогите.

Ответы [ 2 ]

4 голосов
/ 11 июля 2009

попробуйте изменить == на [MyUITextField.text isEqualToString:@"-"]

as == проверяет, являются ли они одним и тем же объектом, тогда как isEqualToString сравнивает содержимое строк.

3 голосов
/ 13 июля 2009

Предполагается, что ваша строка определена как:

NSString *str = @"foo-bar";

Чтобы проверить, содержит ли ваша строка "-", вы можете сделать следующее:

if ([str rangeOfString:@"-"].length > 0)
{
    NSLog(@"Contains -");
}

Похоже, вы хотели удалить первый символ, если строка начинается с данного символа. В этом случае вы можете сделать что-то вроде этого:

if ([str hasPrefix:@"f"])
{
    NSLog(@"Starts with f");
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...