-2

Chrome ブラウザーのような検索履歴テキストフィールドを実装しようとしています。

現在、私の考えは、テキストフィールドに何かが入力されたときに、をサブクラス化し、テキストフィールドのスーパービューにUITextField追加することです。UITableViewデータストレージは Core Data を使用しています。

新しいクラスには、 を指す datasource( UITableViewDataSource) および delegate( UITableViewDelegate) プロパティがありますUITableView

私のアプリでは既に を使用しUITableViewているUIViewControllerので、別の別のオブジェクトをカスタム テキスト フィールドのデリゲート コントローラーとして使用します。

しかし、このテーブルビューはテキストフィールドのスーパービューのサブビューとして追加されるため、テキストフィールドのテーブルビュー イベントを処理するのに問題があります。テーブルビューに触れるたびに、レシーバーは常にそのテーブルビューの下のビューになるため、カスタムテキストフィールドクラスによって設定されたテーブルビューは画面上のタップを受け取ることができませんでした.

4

1 に答える 1

0

元のデザインを捨てて、を使用してUISearchBarを置き換え、UITextFieldカスタマイズUITableViewしたを入れUIViewControllerて検索キーワードを表示することにしました。

UITableViewこのようにすると、 との結合が少しきつくなりますが、の操作がはるかに簡単になりUIViewControllerます。

于 2013-07-07T08:17:26.930 に答える