0

テーブルビューの上部に動的にスクロールするUISearchBarを追加しています。これを行うために、テーブルビューのサブビューとしてUISearchBarを追加し、scrollviewdelegateメソッドを実装して、検索バーが常に上部に固定されるようにしました。また、それに応じてtableViewのcontentInsetを設定して、一番上のセルが検索バーに対して十分にオフセットされるようにします。

私が抱えている唯一の問題は、テーブルビューの最初のセルの上に描画されるデフォルトの区切り文字にあります。上から始めて下にスクロールすると、セパレータは実際には検索バーの下ではなく上に描画されます。これは、私が修正したい恐ろしいユーザーインターフェイスのバグを作成します。これは最初のセルでのみ発生することに注意してください。セル間の1つおきの区切り文字は、必要に応じて検索バーの下をスクロールし、同じUIバグはありません。何かご意見は?

ここに画像の説明を入力してください

4

1 に答える 1

1

UISearchBarが最前面にあることを確認しますか?のコードで、それを一番前に持ってきてみてくださいviewDidLoad。それでも問題が解決しない場合は、インターフェースの代替ソリューションを検討してください。ここにいくつかあります-それらのいずれかを試してください:

  • UISearchBarをUITableViewのヘッダーにします(セクションではなく、テーブルビュー自体)。これは非常に標準的なインターフェースです。

  • iOS 6を使用している場合は、スクロールビューデリゲートトリック(iOS 6以前は非常に標準的でした)の代わりに、制約を使用して、テーブルビューよりもビュー階層の上位にあるビューに検索バーを固定します。(ナビゲーションコントローラーを使用しているので、この場合はナビゲーションコントローラーのビューになります。)これは、スクロールビューのサブビューがコンテンツとともにスクロールされないようにする新しいiOS6の方法です。それで問題が解決するかどうかはわかりませんが、試してみる価値はあります。

  • デフォルトの区切り文字は使用しないでください。セルの背景画像の一部として独自のセパレータを描画することは難しくありません。

于 2012-12-01T18:18:40.127 に答える