1

私はデリゲートメソッドを持つUISearchbarを持っています

- (void)searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText
{
if(searchText.length>3){
 [self updateSearchString:searchText];
}
}

updateSearchString は、インターネットに接続して結果を取得し、フォーマットして、テーブル ビューを更新します。ユーザーがバックスペース キーを押した場合に、これが発生することは望ましくありません。だから私は次のようなことを考えています:

if(searchText.length>3 && lastCharacterTyped!=backspace){
  }

2番目の部分を決定するにはどうすればよいですか?

4

1 に答える 1

1

Objective-C でバックスペースを検出する特定の方法はわかりませんが、最も信頼できる方法は、lastCharacterTyped が入力される前後の文字列の長さをチェックすることです。後者が小さい場合は、バックスペースが押されたことを意味します。それが役立つことを願っています。

于 2012-06-18T15:00:03.413 に答える