1

数ミリ秒が経過するまでUISearchBar呼び出しを遅らせる方法を決定しようとしています。textDidChange私の目標は、複数のキーボードエントリを1つのリモートWebサービス呼び出しに集約することです。今では、キーストロークごとにサーバーを呼び出しますが、これはやりすぎです。

デリゲートメソッドの1つに何らかの方法がない場合UISearchBar、同じ目標を達成する他の方法はありますか?つまり、ユーザーがキーの入力を一時停止するまでサーバーを呼び出さないでください。

私はこのデリゲートメソッドを使用しています:

- (void)searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText 
4

1 に答える 1

5

はい、NSTimerを使用できます。

これを行う:

  1. リモートWebサービス呼び出しを呼び出すNSTimerを作成し、ユーザーが入力を開始したときに実行します。
  2. ユーザーがキーを入力するたびに、タイマーをリセットして再開します。
  3. ユーザーが入力を停止した場合、NSTimerはWebサービス呼び出しを開始します。
于 2010-03-18T17:22:01.943 に答える