プログラムでナビゲーションバーの高さを取得する
moreビューコントローラー(ナビゲーションバー)の存在がUIViewの高さを押し下げることは知っています。この高さ= 44pxであることも知っています。このプッシュダウンがを維持していることも発見しました[self.view].frame.origin.y = 0。 では、このナビゲーションバーの高さを、定数に設定するだけでなく、どのように決定するのでしょうか。 または、より短いバージョンでは、UIViewがナビゲーションバーを上にして表示されていることをどのように判断しますか? 電球が点灯し始めました。残念ながら、以下で説明するように、問題を修正するための統一された方法を発見していません。 私の問題はすべて私の自動サイズ変更マスクに集中していると思います。そして、UIWebViewの有無にかかわらず、同じ現象が存在すると私が結論付けた理由。そしてその症状は、ポートレートにとってすべてが桃色だということです。ランドスケープの場合、一番下のUIButtonがTabBarの後ろにポップアップします。 たとえば、私が持っている1つのUIViewで、上から下へ: UIView –両方のスプリングが設定され(デフォルトの場合)、ストラットなし UIScrollView-2つのスプリングを設定し、その他すべて(UIViewなど)をクリアすると、UIButtonはそのすぐ上のオブジェクトに侵入します。すべてをクリアすると、UIButtonは問題ありませんが、最上部にあるものはStatusBarの後ろに隠れます。上部のストラットのみを設定すると、UIButtonはタブバーの後ろにポップアップします。 次の垂直方向のUILabelとUIImage –トップストラットセット、他のあらゆる場所で柔軟 UIWebViewを持っている少数の人のために画像を完成させるためだけに: UIWebView-Struts:上、左、右Springs:両方 UIButton –何も設定されていない、つまりどこでも柔軟 私の電球は暗いですが、希望があるようです。 短い返答コメントよりも多くのスペースが必要だったので、ご容赦ください。 私が実際に何のために釣りをしているのか理解してくれてありがとう...だからここに行く。 1)各UIViewController(TabBarアプリ)には、UIImage、いくつかのテキスト、その他の上に何でも持っています。別の共通点は、下部にあるUIButtonです。一部のUIViewControllersでは、UIButtonの上にUIWebViewがあります。 したがって、UIImage、テキストなど。UIWebView(一部の)UIButton 上記すべてを囲んでいるのがUIScrollViewです。 2)UIWebViewがあるものの場合、autoresizingMaskは次のようになります。 — | — ^ | | | — | ←----→| — | | | V UIButtonのマスクには何も設定されていません。つまり、どこでも柔軟です -viewDidLoad内で、-repositionSubViewsを呼び出し、その中で次のことを行います。 UIWebViewがない場合は、IBで配置したUIButtonを中央に配置する以外は何もしません。 UIWebViewがある場合は、その* content * Heightを決定して、コンテンツ全体を囲むようにフレームを設定します。 UIScrollView *scrollViewInsideWebView = …