2011-04-25 3 views
0

내 아이폰 앱에 검색 바를 구현하여 배열 요소 검색을 적용하고 있습니다. 해당 배열에서 서버에서 가져온 데이터를 구문 분석을 통해 저장합니다. 에서 myArray는 변경 가능한 배열과 그 요소는 다음과 같습니다 : 데이터는 다음과 같이 PDF 파일에 대한 몇 가지 링크가 포함되어배열 요소에서 검색을 적용하는 방법은 무엇입니까?

 
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?

감사합니다.

답변

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]; 
     } 
     } 


} 

하는 검색에이 코드를 사용해보십시오.

+0

고마워요 !!! 그 도움이 나를 위해. –

1

다음 작업을 수행 할 수 있습니다. - 어레이의 이름을 폴더로 지정하십시오 .CheckArray (사용자가 변경). 검색 바 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]]) { 
} 
+0

@ 제니퍼 : 고맙습니다. !!! searchBar.text에서는 배열 요소와 같은 문자열을 입력해야합니다. 그러나 검색 논리에 따라 theSearchBar.text는 배열 요소의 모든 하위 문자열이 될 수 있습니다. –

+0

@archana 검색 논리를 사용하는 경우 문자열을 입력 할 때 하위 문자열이있을 수 있습니다. 검색 문자열이 배열 값 중 하나에 있으면 배열 요소의 전체 값을 가져와야합니다. 당신은 당신의 검색 코드를 점검 할 필요가 있습니다. 당신은 그것의 해결책을 얻을 것입니다. – Gypsa

+0

@Jennifer : 배열은 서버로부터 가져온 URL을 포함하고있어 최종 사용자는 검색 할 전체 URL을 알지 못하기 때문에 부분 문자열이 될 것입니다. 그리고 그 논리는 문자열이 배열 요소와 함께 부분 문자열로 어떻게 비교되는지를 알고 싶습니다. 이 행을 설명 할 수 있습니다. ([self.folderCheckArray containsObject : [NSString stringWithFormat : @ "% @", theSearchBar.text]] { }는 배열에서 검색하기 전에 검색 텍스트의 형식을 의미합니다. , 이것이 나를 도울 것입니다. 감사합니다 –

관련 문제