2017-09-20 9 views
3

WWDC 2017 presentation 204では、カスタムタイトルビューでautolayoutを使用できると言われています。彼らはこれを行う方法の一例を示したことがないwwdc-picUINavigationBarカスタムタイトルビューで自動レイアウトを使用する方法

7時53分の周り

は、それが起こります。

私が試してみると、サイズがゼロのビューが得られます。インターフェイスビルダーで

私はUIViewのを作成して、一種のこの

[seachBar]のようにおさまるようUISearchBarとUIButtonを追加する - それは、幅ゼロとなり、[ボタン]

誰でもこの新機能の使い方を知っていますか?

答えて

0

私は自分の質問に答えるつもりです。

本質的に、自動レイアウトは期待通りに機能します。しかし、すべての要素が幅を指定するための制約を持つ必要があるか、または固有のサイズが指定されている必要があります。たとえば、検索バーをuilabelに置き換えた場合、カスタムタイトルビューはラベルに正しく適合します。検索バーには内在的なサイズがありません。したがって、検索バーの成長を制御する必要があります。

検索バーの後ろにuilabelを置き、検索バーの上端、下端、先行端、後端に拘束します。私はテキストの大部分を与えて、あまりにも多くのテキストがあるときに切り詰めるようにしました。

アプリを実行したときに、検索バーの幅がゼロでなく、ランドスケープに変更すると、検索バーが縮小されて伸縮します。ボタンはまだ0幅に折り畳まれますが、圧縮抵抗をユーラベルより高く設定することで簡単に固定できます。

この目的のためにダミーのUILabelを追加するためのハックのようなものです。私はここで

が提案答えは前にのみすべてのOSは、したがって、いくつかのカスタムレイアウトが必要とされるカスタムtitleViewを拡張しませんiOSの11で動作しますexample project.

+0

です...どの選択肢に開いていると思います。 – DerrickHo328

関連する問題