2011-12-28 12 views
2

私は、私が持っている市松模様の画像で背景色を設定しようとしています。私は現在、私のiPhoneアプリでこれを使用しています、今、普遍的なアプリを作成しようとしています。私がこれを使用するとき:背景色(colorWithPatternImage)がiPad用の全体図を塗りつぶしていない

UIImage *bgimg = [UIImage imageNamed:@"square_bg.png"]; 
self.view.backgroundColor = [UIColor colorWithPatternImage:bgimg]; 

私のiPhoneアプリでうまくいきます。ポートレートモードでiPadにロードすると、下部に約20ピクセルの空白があります。それが風景に読み込まれるとき、それはいいです。私がポートレートからランドスケープに回転して戻ってきたら、それもいいです。

私の欠点は、私の見解の底までパターンをいっぱいにするでしょうか?

更新

Iは、固体の色に色を設定した場合、[UIColor blueColor]、画面全体が正常に充填します。 colorWithPatternImageとソリッドカラーとの相違点はなぜですか?

アップデート2

私が使用していたファイルは、252x230の寸法のPNGファイルです。私はこのイメージを使ってこのアプリのiPhone版でパターンを作成しました。ファイルサイズやディメンションがこの問題に関係しているのかどうかはわかりませんが、場合によってはファイルサイズやディメンションに問題があると思います。

+0

Core Graphicsは、ビューの左下隅から開始してパターンイメージを描画します。境界線を持つパターンイメージを使って、イメージが1)クリップされているか、または2)マージンが追加されているかを調べることができますか? –

+0

私はそれを試して、あなたに知らせるでしょう。 –

答えて

1

20pxはステータスバーの高さに似ています。ビューフレームを教えてください。

自動サイズ設定は動的幅&の高さと固定枠に正しく設定されていますか?

+0

私はちょっとばかみたいな気分です。私はすべてのディメンションをチェックするために戻ってきました。ステータスバーはこのビューのために設定されていました。物事が20pxシフトしました。ステータスバーをオフにすると、すべてが正しく埋められます。それが風景モードでそれに影響しないのはなぜか不思議です。しかし、問題は解決されています。 –

+0

私はそれが自動化と関連していると思います。ナビゲーションコントローラとそのナビゲーションバーにも同様の問題がありました。また、ランドスケープで、または最初の回転後に起動したときにも正しく機能しました。 – Sulthan

2

ビューが正しい高さに設定されていない可能性があります。 backgroundColorを単色に変更すると、画面全体が塗り潰されますか?

+0

はい、そうです。 colorWithPatternImageをblueColorで置き換えると、青色のフルスクリーンが表示され、問題は発生しません。 –

関連する問題