Я хочу посмотреть, есть ли строка, которая является заголовком сообщения в ленте новостей apple rss, содержит подстроку, например. «Стив» или «Вакансии». Я организовал сообщения в uitableview.Как увидеть, содержит ли строка подстроку (цель-с)
Так Был пост, который был Стив или Джобса в его названии, так что я использовал это, чтобы проверить:
if ([[entry title] localizedCaseInsensitiveCompare:@"Steve"] == NSOrderedSame || [[entry title] localizedCaseInsensitiveCompare: @"Jobs"] == NSOrderedSame) {
NSLog(@"Comparism of Steve Jobs");
cell.imageView.image = [UIImage imageNamed:@"steve.png"];
}
Но это никогда не называли, запись класс RSSItem, который содержит название - запись и его название не является моей проблемой, я проверил. Моя проблема - это проблема. Как сравнить
UPDATE!
Ok вот код:
NSRange range = [[[cell textLabel] text] rangeOfString:@"Steve" options:NSCaseInsensitiveSearch];
if (range.location != NSNotFound)
{
cell.imageView.image = [UIImage imageNamed:@"steve.png"];
}
Я пробовал другие народы путь также, но тот же результат:
некоторые клетки имеют свои ImageView, как steve.png, даже если их название оленья кожа содержит рабочие СТИВ , Weird ??? Я прокручиваю вниз, и когда я возвращаюсь обратно, все перегруженные ячейки, которые перераспределены и инициализированы, имеют изображение работы на сцене. При запуске, когда я открываю приложение, некоторые ячейки, которые не имеют steve в своем названии, НЕ ИМЕЮТ ИЗОБРАЖЕНИЕ, а затем это происходит.
Мой окружающий код ЕСЛИ НУЖНО:
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewCell *cell = [tableView
dequeueReusableCellWithIdentifier:@"UITableViewCell"];
if (cell == nil) {
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault
reuseIdentifier:@"UITableViewCell"]
autorelease];
}
tableView.autoresizingMask = 5;
tableView.autoresizesSubviews = YES;
cell.autoresizingMask = 5;
cell.frame = CGRectMake(cell.frame.origin.x, cell.frame.origin.y, 20, 20);
RSSItem *item = [[channel items] objectAtIndex:[indexPath row]];
[[cell textLabel] setText:[item title]];
NSMutableString *string = [[NSMutableString alloc] initWithString:[[cell textLabel] text]];
if (string.length > 46) {
cell.textLabel.numberOfLines = 2;
UILineBreakMode lineBreak = UILineBreakModeClip;
cell.textLabel.lineBreakMode = lineBreak;
}
[string release];
tableView.backgroundColor = [UIColor darkGrayColor];
cell.textLabel.font = [UIFont fontWithName:@"Arial Rounded MT Bold" size: 12.0];
cell.backgroundColor = [UIColor whiteColor];
NSRange range = [[[cell textLabel] text] rangeOfString:@"Steve" options:NSCaseInsensitiveSearch];
if (range.location != NSNotFound)
{
cell.imageView.image = [UIImage imageNamed:@"steve.png"];
}
return cell;
}
Пожалуйста, дайте текст несколько ячеек, которые ложно матч " Стив". –
И вы удаляете изображение из переработанных ячеек, которые * не * «Стив»? Для меня это не похоже. –
Текст нескольких ячеек, которые ложно соответствуют Стиву: заявление директоров Apple совета 100 миллионов OSX Lion загрузок в день – user973985