2017-10-02 2 views
0

ViewControllerを3つの等しいセクションに分割したいと思います。 「何」、「なぜ」、「どこで」、各ビューがタップされたときに、それはセになります。私は、UIViewControllerを使用し、3つの別々のビューを持って、適切なページにかかる各ビューでタップジェスチャーを使用することを考えました。tableviewcontrollerとプロトタイプのセルを使って画面を3つのセクションに分割できますか?

しかし、私は多分マスターディテールtableviewcontrollerと3つの文字列の配列を使って各セルにデータを入れることができると思っていました。

override func numberOfSections(in tableView: UITableView) -> Int { 
     // #warning Incomplete implementation, return the number of sections 
     return 3 
    } 

    override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { 
     // #warning Incomplete implementation, return the number of rows 

     return 1 
    } 

私はどの方法が正当であるか分からず、tableviewcontrollerの主な問題はセルの高さです。理想的には、各セクションに1つのセルしかないので、セルの高さがセクションの高さ全体を占めるようにしたいのですが、セルの高さを100%に設定できるかどうかはわかりません。

ありがとうございます。

+0

こんにちは、https://stackoverflow.com/a/41310654/3548469を参照してください。 –

+0

ボタンを追加するだけで簡単にビューに追加できます –

答えて

1

同じサイズの3つのセクションを作成して、>= iOS9をビルドする場合、最も簡単で速い方法は、垂直のUIStackViewを使用することです。

わずか3 UIButtonsに落とし、それはfillへとそのdistributionfill equallyalignmentだし。スタックビューのtopAnchorbottomAnchorleadingAnchor、およびtrailingAnchorには、superviewの0という制約があります。

もちろん、UITableViewを使用することはできますが、セルにはそれぞれ画面サイズの3分の1があることを確認するにはかなりの労力が必要です。画面サイズに基づいて動的に適応するようにする必要があります(完全に可能です)。また、tableViewを使用する場合は、静的なものが最適です。次に、cellForRowなどのデリゲートメソッドを実装する必要はありません。

関連する問題