前提・実現したいこと
ここに質問の内容を詳しく書いてください。
(例)PHP(CakePHP)で●●なシステムを作っています。
■■な機能を実装中に以下のエラーメッセージが発生しました。
storyboard上で、ボタンを等間隔に配置したいです。
swift初心者です。
発生している問題・エラーメッセージ
現在、電卓のようなアプリを作ろうとしていて、Storyboard上で、等間隔にボタンを配置しようとしています。
Auto layout のAdd New constraints を使って、下0,左8とした場合、画像のようにボタン同士が重なってしまいます。
ボタン同士が重ならないように、複数ボタンを等間隔に並べるにはどうしたら良いか、ご教授願いたいです。
ちなみに、電卓アプリを作るにあたって参考にされている書籍とかネット記事などはありますでしょうか。
それらを参考にしているようであれば、そちらを見た上で回答を考えたいと思っています。
返信が遅れて申し訳ありません。
こちらのサイトを参考に電卓のようなアプリ自体は作成しようとしていました。
https://eh-career.com/engineerhub/entry/2017/05/25/110000
こちらのサイトではボタン配置自体はサラッと流しているため、ボタン配置については
https://hikaruapp.jpn.com/xcode/sample-code/storyboard/post-912
https://note.com/gokawashima/n/n409ddb56ba0c
の2つのサイトを参考にしていました。
元記事には「ボタンを適当に配置する」とありますが、適当ではなく「適切に」配置する必要があります。
Interface Builder は部品間の拘束関係(Constraint)を自動的に推測する機能があるのですが、部品を重ねた状態で拘束をつけると、親Viewに対する拘束をつけるようになっています。
スクリーンショットを拝見する限り、ボタン全ての拘束が親 View になっているようです。
ボタンを追加していくときに、先に配置したぼたんと重ねず、間隔を開けて配置するようにすれば、参考になれた記事のように最終的には整列させて配置することができるはずですが、その辺りの手順はどのようにされていますでしょうか。
初心者さんには AutoLayout は難しいので、最初は AutoLayout は使わない (画面サイズが変わると画面からはみ出したりするけど、とりあえず気にしない) か、綺麗に並べたいなら StackView を使うのがいいかもしれません。
あなたの回答
tips
プレビュー