iOS - 对象未添加到数组中

时间:2015-05-19 10:25:10

标签: ios objective-c arrays nsmutablearray uisearchbar

我不明白为什么附件没有添加到数组filteredAttachmentsdataAttachment是有附件的附件,我想在其中搜索具有特定名称的附件然后匹配的那些将被添加到

·H

@property (nonatomic, strong) NSMutableArray * dataAttachments;

@property (nonatomic, strong) NSMutableArray * filteredAttachments;

的.m:

- (void)searchBarSearchButtonClicked:(UISearchBar *)searchBar {

  self.filteredAttachments = [NSMutableArray new];

  [self.dataAttachments enumerateObjectsUsingBlock:^(Attachment *attachment, NSUInteger index, BOOL *stop) {

    if ([attachment.name containsString:self.searchBarFiltern.text]) {

      [self.filteredAttachments addObject:attachment];

    }
  }];

  [self.tableView reloadData];
}

2 个答案:

答案 0 :(得分:1)

首先初始化你的self.dataAttachments数组

self.dataAttachments = [NSMutableArray array]:

然后检查self.dataAttachments数组的输出是空白还是填充。

答案 1 :(得分:1)

containsString:方法仅在iOS 8中添加。 如果您希望代码在iOS 7和iOS 8上运行,则应使用其中一个rangeOfString调用。基本上,如果返回的范围的长度为零,则子字符串不存在。

if([string1 rangeOfString:string2].length >0)
{
  // found
}