2016-09-24 4 views
1

に画面サイズするようにしてください私は意味正確に何を示すために絵を作った: http://nl.tinypic.com/r/11vjoy8/9は、相対的なイメージが迅速

私はお互いの隣に8枚の画像を作りたい、すべて同じサイズ。アプリは横長モードなので、ポートレートモードはありません。画像は高さの20%、幅の12,5%のようにする必要があります。したがって、スクリーンサイズに比例している必要があります。これは制約を使って行うことができるのか、それともプログラム的にしかできないのでしょうか?私はどんな答えにもとても満足しています!

答えて

-1

おそらくプログラム的には簡単かもしれないと思います。

あなたのアプリを使用して携帯電話は、以下であるどのように背の高い/ワイド決定するためにUIScreenを使用することができます。

UIScreen.mainScreen().bounds.height 
UIScreen.mainScreen().bounds.width 

その後、あなたはこのような何かを行うことができ、あなたの視野を埋めるために(あなたがそのカバースーパーを持っていると仮定します画面全体):

imageView.frame.size.width = UIScreen.mainScreen().bounds.height/8 
imageView.frame.size.height = UIScreen.mainScreen().bounds.width/5 
superView.addSubview(imageView) 

次にあなたがする必要があるだろう、すべては以前のものからにわたり12.5%であることを、各ImageViewのy座標をxと設定されています。これは単純なfor-loopで行うことができ、同じ方法を使用する必要がある場合は画面サイズを再度呼び出すことができます。インスピレーションを得るためには、以下を参照してください:

var imageViews: [UIImageView] = [imageView1, ...] 

var i = 0 
for index in imageViews { 
    index.frame.origin.x = 0 
    index.frame.origin.y = 0 + (UIScreen.mainScreen().bounds.height/8)*CGFloat(i) 
} 
0

あなたは、すべてのInterfaceBuilderからスタックビューでこれを行うすべての画像を選択して、スタックビューでそれらを一緒に入れて、後にメインのUIViewに比例した高さと幅を持つスタックビューに制約を与えることができます