質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

Q&A

2回答

1902閲覧

SwiftでFacebookやCookpadの詳細画面のように一つの画面内に複数の要素がある画面を作るにはどうしれば良いのでしょうか

yuta_nishimori

総合スコア19

iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

0グッド

0クリップ

投稿2016/03/23 15:22

Facebookではないも混ざっていますが下のような1画面内で複数の異なるView要素に分かれていて、なおかつその一つ一つのビューでリストのような表示をするようなものをどう実装すればいいのでしょうか?

イメージ説明
イメージ説明
イメージ説明

例えばUIScrollViewの下にそれぞれ個別にUIViewをおいていくみたいな方法があると思うのですが、ただそれだとリスト表示をするときにScrollViewの上ににTableViewを設置することになってScrollViewが二重になってしまうため挙動がおかしかったりTableの高さが可変でなかったりと思い通りの動作にはできませんでした

調べてるとUITableViewを一つおいてTabel内でそれぞれの項目をセクションとして実装するといった方法がある、ということを知ったのですがどうもこの方法にしても詳しい内容が書かれている記事をあまり見つけられず、本当にこの方法でいいのかと迷い中です。

もし詳しい方がいましたら、こういった複数のView要素に分かれた画面の実装方法を教えてください。
よろしくお願いします

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

こういうことでしょうか?
###前提

  • self.viewにScrollViewをadd
  • scrollViewのcontentViewにtableView1とtableView2をadd
  • contentViewの高さはtableView1とtableView2の高さを足した高さに同じになるようにautolayout
  • tableView1とtableView2のNSLayoutConstraintをコードで変更できるようにしておく

###実装

swift

1@IBOutlet weak var tableView1Height: NSLayoutConstraint! 2@IBOutlet weak var tableView2Height: NSLayoutConstraint! 3 4func hoge() { 5 6 // テーブルの高さをスクロールされないところまで広げる 7 tableView1Height.constant = 500; 8 tableView2Height.constant = 500; 9 10 // レイアウト再構築 (高さ1000のscrollViewが出来上がる) 11 self.view.layoutIfNeeded() 12} 13

投稿2016/03/24 02:59

編集2016/03/24 03:01
Rumi_Igarashi

総合スコア47

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yuta_nishimori

2016/03/24 16:33

この方法だとたとえばテーブル1のアイテムが100個あって、テーブル2のアイテムが5個のときにデザインの整合性が取れないのが問題なんですよね、、
guest

0

Container View
Stack View
この辺りを利用しているのだと思いますよ。

投稿2016/03/23 18:05

t_obara

総合スコア5488

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yuta_nishimori

2016/03/24 16:34

へー、こんな機能があったんですね、調べてみます
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問