0

iOS 7 テーブル ビュー コントローラーの UITableView に接続されている searchDisplay コントローラーを非表示にしようとしています。一時的に一番上にスクロールしたくありません。完全に無効にしたい。

私のテーブル ビュー コントローラー コード (このため、FWIW はグループ化されたスタイルに設定されています) では、次のようになります。

self.searchDisplayController.searchBar.hidden = YES;

これにより検索バーが非表示になりますが、残念ながらテーブルの上部に空白のボックスが表示されます。

空白の検索バー スペースのスクリーンショット

この空白は、検索バーと同じように画面外にスクロールされます。 self.searchDisplayController.searchBar.hidden = NO;期待どおりに検索バーを戻します。

この質問の質問と回答の両方からの提案を使用して、テーブル ビューを 44 ピクセル上にシフトしようとしました。.

また、検索バーのフレームを次のように高さを持たないように設定しようとしました:

self.searchDisplayController.searchBar.frame = CGRectMake(0, 0, self.tableView.frame.size.width, 0);

しかし、これでもテーブルの上部にある空白が取り除かれません。

UISearchDisplayController から検索バーを非表示にし、実際にそれが占有するスペースを、そもそもそこになかったかのように折りたたむにはどうすればよいですか?

4

1 に答える 1

0

私は最終的に、アプリの動作を連鎖させて、この奇妙な動作の条件を回避することでこれに対処しました。この動作が後の OS リリースで修正されたかどうかはわかりません。

于 2015-08-07T07:46:54.293 に答える