1

プロジェクトに検索バーを実装しようとしています。

SearchBarアウトレットを作成し、デリゲートを設定しましたが、キーボードボタンを押すと、このボタンの値がに表示されません。UISearchBar

誰か教えてもらえますか?

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

     // When the search button is tapped, add the search term to recents and conduct the search.
     NSString *searchString = [aSearchBar text];
     NSLog(searchString);
 }
4

3 に答える 3

1

たぶんあなたはこのメソッドを実装するのを忘れました:

- (BOOL)searchBarShouldBeginEditing:(UISearchBar *)searchBar
{
    return YES;
}

YESを返すことにより、編集を受け入れることを「言います」。

編集

このメソッドを実装する必要はありません。デフォルトでは、UISearchBarは編集を受け入れます。
追加のメソッドを実装する必要はありません。

確かに私は次のことをしました:

  • xibファイルの検索バーをドラッグしました。
  • xibを介して、デリゲートをビューコントローラにバインドします。
  • searchBarSearchButtonClicked:を実装し、ブレークポイントを設定しました。

完璧に機能します。すべてが正しい方法で行われたことを確認してください。

于 2012-12-27T18:54:12.193 に答える
0

この方法を忘れてしまいました

-(BOOL) searchBar:(UISearchBar *)searchBar shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text {
    return YES;
}
于 2012-12-27T19:04:45.417 に答える
0

appDelegate、applicationDidFinishLauchingで以下のコードを見逃しました

 self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
[self.window makeKeyAndVisible];

これで、SearchBarは正常に機能しています。

于 2013-01-04T17:31:45.987 に答える