28861


最近StoryBoardを使い始めたのですが、端末ごとにうまく画像やButtonの配置ができません。  
例えば画像のようにたくさんのButtonを均等に配置する場合、Buttonのwidthとheightを先に指定してしまうため、6sや5sではうまく画面に収まった場合でも、4sでは画面からButtonがはみ出してしまいます。  
今回は出来るだけコードを書かずにStoryBoardを使って実装したいと考えています。  
先にwidthとheightを指定せずに画面の比率からうまくサイズを調整したいのですが、コードを書かずにAutoLayoutだけで実装することは可能でしょうか？現在Buttonのwidthとheightをviewのwidthの1/5のサイズにできないかと考えています。  
もし可能な場合は、そのやり方を教えていただけないでしょうか？宜しくお願いいたします。

[![画像の説明をここに入力](https://i.stack.imgur.com/uzfCf.jpg)](https://i.stack.imgur.com/uzfCf.jpg)


CC BY-SA 3.0
2016-09-12T15:02:42.697
28843
2016-09-13T12:14:48.863
2016-09-12T18:42:02.293
76
18492
question
swift ios storyboard
StoryBoardを使って端末(4s,5s,6sなど)ごとにImageViewやButtonのサイズを変更したい


> Buttonのwidthとheightをviewのwidthの1/5のサイズにできないか

はい、できます。

まず、View Controller上に、ビュー（ボタン、Image Viewなど）を配置し、横幅を、正確にベースViewの横幅の1/5にします。  
そして、Document Outline上で、ベースViewと、配置したViewを、Commandキーを押しながら両選択します（下図）。

[![画像の説明をここに入力](https://i.stack.imgur.com/NCSmD.png)](https://i.stack.imgur.com/NCSmD.png)

**Pin** をクリックして、ポップオーバーを表示し、 **Equal Widths** にチェックを入れ、Add Constraintします（下図）。

[![画像の説明をここに入力](https://i.stack.imgur.com/78sQk.png)](https://i.stack.imgur.com/78sQk.png)

つぎに、Constraintを選択して、そのSize Inspectorを表示します。 **Multiplier**
を0.2（5分の1）に設定します（下図）。

[![画像の説明をここに入力](https://i.stack.imgur.com/AhSeD.png)](https://i.stack.imgur.com/AhSeD.png)

これで、ベースViewの横幅5分の1の、ビューの横幅を設定できます。ほかの必要なConstraintsを設定してください。  
iOSシミュレータで、iPhone 4s、iPhone 6s Plusで実行したスクリーンショットです。

[![画像の説明をここに入力](https://i.stack.imgur.com/6AmZG.png)](https://i.stack.imgur.com/6AmZG.png)[![画像の説明をここに入力](https://i.stack.imgur.com/lzbsT.png)](https://i.stack.imgur.com/lzbsT.png)

スクリーンサイズにより、ビューのサイズが可変になっているのがわかります。


CC BY-SA 3.0
2016-09-13T12:14:48.863
28861
2016-09-13T12:14:48.863
18540
28843
answer