2010-11-24 4 views
0

私はsearchDisplayControllerの助けが必要です。 現在、私はsearchDisplayControllerをtextDidChange、 と一緒に使用していますが、検索を押すか、行の1つを押すたびに、検索テキストがsearchBarから削除されます。 その後、textDidChangeに戻り、空の文字列でコードを実行します。 誰かが私を助けることができますか?事前にsearchDisplayControllerは私のsearchtextを削除します

おかげ

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

    if(connectionStatus.boolNoConnection||connectionStatus.boolErrorConnection) 
    { 
     [self.searchDisplayController setActive:NO animated:YES]; 

     MKCoordinateSpan span; 
     span.latitudeDelta = 2.5f; 
     span.longitudeDelta = 2.5f; 

     CLLocationCoordinate2D location; 
     location.latitude = 52.30; 
     location.longitude = 5.45; 

     MKCoordinateRegion region; 
     region.span = span; 
     region.center = location; 
     [map setRegion:region animated:YES]; 
    } 
    else { 
     if (![geoArray count] == 0) { 
      [map removeAnnotations:pins]; 
      [pins release]; 
      [pinPlacemark removeAllObjects]; 
      [self readArray:geoArray]; 
      [self.searchDisplayController setActive:NO animated:YES]; 
     } 
    } 
} 

私は間違いなくあなたのコードを参照する必要がありますが、私が読んだものから、検索テキストを変更する必要がないどこにも、ここで

+0

あなたのコードを確認するのに役立ちます。あなたがUISearchViewテキストプロパティを実際に変更する必要はありません。私の実装では、ビューの初期化時に空白になり、その後は変更されません。私は、検索ボタンが押されたときに、テキストにあるものにプレースホルダプロパティを設定します。 –

答えて

0

をsearchdisplaycontrollerを呼び出します。コードをチェックして、[[[self searchDisplayController] searchBar] setText:XXX]を呼び出しているかどうかを確認してください。これにより、検索を実行せずに検索バーのテキストを変更することができます。

関連する問題