如何在数组元素上应用搜索?

时间:2011-04-25 06:27:35

标签: iphone objective-c

我正在我的iphone应用程序中实现搜索栏以应用搜索数组元素。 在该数组中,我通过解析保存从服务器获取的数据。 这些数据包含一些pdf文件的链接,如下所示:myArray是一个可变数组,其元素是:

http://www.projects-demo.com/iphone/unicurd/recipePagePdf/abc.pdf
http://www.projects-demo.com/iphone/unicurd/recipePagePdf/def.pdf
http://www.projects-demo.com/iphone/unicurd/recipePagePdf/ghi.pdf
http://www.projects-demo.com/iphone/unicurd/recipePagePdf/jkl.pdf
http://www.projects-demo.com/iphone/unicurd/recipePagePdf/mno.pdf
http://www.projects-demo.com/iphone/unicurd/recipePagePdf/pqr.pdf
http://www.projects-demo.com/iphone/unicurd/recipePagePdf/stu.pdf
http://www.projects-demo.com/iphone/unicurd/recipePagePdf/vwx.pdf
http://www.projects-demo.com/iphone/unicurd/recipePagePdf/yz1.pdf

我在searchtext.text中保存要搜索的字符串 现在应该在myArray的元素中搜索这个searchtext.text实现什么逻辑?

感谢。

2 个答案:

答案 0 :(得分:1)

你可以这样做: - 让你的数组folderCheckArray的名字(由你的名字改变)。

搜索栏中的

searchBUttonclick方法: -

- (void) searchBarSearchButtonClicked:(UISearchBar *)theSearchBar
{
if ([self.folderCheckArray containsObject:theSearchBar.text]) {
    NSLog(@"array contain object"); 
    }
else
{
NSLog(@"array contain object"); 
}
}

如果您必须在搜索文本中进行任何格式化,然后才能在数组中搜索,则可以编写

if([self.folderCheckArray containsObject:[NSString stringWithFormat:@"%@",theSearchBar.text]]) {
}

答案 1 :(得分:0)

创建一个新数组,如果foundlet是copyitemcity,则保存值。

搜索代码: -

NSString *searchText = searchBar.text;

for (NSString *str in folderCheckArray)
    {

NSRange titleResultsRange = [str rangeOfString:searchText options:NSCaseInsensitiveSearch];
if(titleResultsRange.location != NSNotFound)

        {

        if (titleResultsRange.location==0)
        {
            [copyitemcity addObject:str];
        }
        }


}

尝试使用此代码进行搜索。