Xcode 8(正確にはバージョン8.1(8B62))を使用してiOS 10用に開発しており、tableView
より上の固定searchBar
を表示するビューコントローラーを開発しようとしています。私は最初のレイアウトを持っていますが、searchBar
を有効にすると、それは私の見解から完全に消えます。ここでSearchController SearchBarが表示から消える
は私のビューコントローラのビュー階層である:
さて、問題:
View
|
|---- UISearchBar
|
|---- UITableView
、ここではそれがどのように見えるかです。 UISearchDisplayController
のようなUISearchController
を含むためのInterface Builderツールがないので、私はsearchBar
をプログラムで私のView ControllerのviewDidLoad
メソッドでプログラムに追加しています。私はsearchController.searchBar
を使って、ストーリーボードで使用する一時的なUISearchBarを置き換えています。 :
// attribute to store the searchController
var searchController: UISearchController!
// temporary searchBar from storyboard
@IBOutlet weak var tempSearchBar: UISearchBar!
...
override func viewDidLoad() {
super.viewDidLoad()
searchController = UISearchController(searchResultsController: nil)
searchController.searchResultsUpdater = self
searchController.searchBar.frame = tempSearchBar.frame
tempSearchBar.removeFromSuperview()
view.addSubview(searchController.searchBar)
}
私はアプリを実行し、私のsearchController
に添付searchBar
オブジェクトをアクティブにすると、それが視界から消える:
tableView
も変わっていますが、主な焦点はsearchBar
です。私はこの仕事をするためにいくつかの異なることを試みましたが、私は運がゼロです。どんな助けも大歓迎です。私は実装するのが難しいことではないはずです。私はUISearchDisplayController
オブジェクトでうまくやることができますが、それらは非難されています。私は良いプログラマーになろうと努力しています。