質問: true ``` の部分に問題があると考えていますが、どうなのでしょうか...。 他サイトでほとんど同じような質問がされていても回答がなかったり、海外サイトでの質問と回答も試しましたがダメでした。 ![画像の説明をここに入力](https://i.stack.imgur.com/HL7MM.jpg)
回答: 結論から言うと、 **チュートリアルの表示例が間違っている** と言うことです。そこまでのチュートリアルを順に進めて、説明にあるようにコードを記載していくと、あなたのご質問にあるような表示になります。チュートリアルの表示例は間違いです。 (あるいは、説明のどこにも書いていない何かをしないと同じ表示は実現できない...。) そもそも、`UIStackView`と言うのは、「子ビューたちをうまく並べて親(`UIStackView`)全体をうまく埋める」ためのものです。それを実現するために、追加される子ビュー側に強力な制約(constraint)を付けていきます。設定によっては、そのために子ビュー側の元の制約(`button.widthAnchor.constraint(equalToConstant: 44.0).isActive = true`とか)が無視されてしまうこともあります。 子ビューが1個だけだと、それ1個だけで親ビュー全体を埋めようとしますから、あなたの画面のような表示になります。 とりあえず、現時点のコードに最小限の変更を施してチュートリアルの表示例のような画面を作りたければ、次のようにして見てください。 ``` private func setupButtons() { //... addArrangedSubview(button) //ボタンを表示させる let filler = UIView(frame: .zero) //<- addArrangedSubview(filler) //<- } ``` 残念ながら、このチュートリアル、Apple製の公式のものであるにも関わらず、この手の破綻がちょくちょく報告されています。(章の後半、かなり先の方のコードを記載しないと表示例が間違っているどころかビルドが通らず、画面の確認自体ができない、とか。) 一部は直されていっていると思うのですが、まだまだ100%信頼しても大丈夫と言う状態ではないようです。章の途中の表示例が違う程度の場合、「また出たか」くらいの気持ちで先に進んでみてください。それでもダメでも、あまり長時間悩まずにここなんかに質問してもらった方が良いでしょう...。