2017-04-11 12 views
1

私はAuto-layoutで非常に新しいです。自分のやり方を試してみましたが、オンラインで検索しましたが、適切な答えが見つかりませんでした。ここで私は何をしようとしている..私はcustomcellとUITableView1を持っています。今カスタムセルで私はサブビューとしてUITableView2を持っています。UITableviewcellのAutolayoutの問題サブビューとしてUitableviewを持っている

私の問題は、UITableView2が自動的に高さでデータを正しく読み込みます。しかし、私のUITableView1セルの高さは、UITableView2の高さごとに増加していません。ここに理解しやすい私の見解のイメージがあります。基本的にこの問題enter image description here

+0

2番目のtableViewの下位アンカーを最初のtableViewCellのbottomAnchorに、tableView2 greaterThanOrEqualの高さを定数にしてみます。最初のtableViewCellのheightForRowAtメソッドでは、tableView.rowHeight = UITableViewAutomaticDimensionを使用してください。tableView.estimatedRowHeight = constant-here そして、tableView1のheightForRowメソッドで、UITableViewAutomaticDimensionを返します。 – iDeveloper

+0

こんにちは、ありがとうございました。私はこれを得ることができません。 – Rahul

+0

プログラム制約またはストーリーボード制約を使用していますか? – iDeveloper

答えて

0

オーケーを解決するために私を助けてください:すべての

まず、あなたのtableView1が自動リサイズ細胞を持つようにする必要があります。あなたのUITableViewCellのサブクラスに以下の自動レイアウト制約を追加する必要がその後

tableView.rowHeight = UITableViewAutomaticDimension 
tableView.estimatedRowHeight = constant-value-here 

:あなたのtableView1クラスで、あなたのviewDidLoad()メソッドに以下を追加する必要があり、それを行うために 。

  1. あなたのinitメソッドで呼び出し、その方法で)(それはsetupCell
  2. を呼び出すメソッドを作成し、次の行を追加します。

    tableView2.centerXAnchor.constraint(equalTo: centerXAnchor).isActive = true tableView2.centerYAnchor.constraint(equalTo: centerYAnchor).isActive = true tableView2.bottomAnchor.constraint(equalTo: bottomAnchor, constant: -8).isActive = true tableView2.heightAnchor.constraint(greaterThanOrEqualTo: another-constant-value here).isActive = true

tableView2.translatesAutoresizingMaskIntoConstraintsが設定されていることも確認してくださいfalseに変更し、tableViewサブクラスのinitメソッドでsetupCellメソッドを呼び出すことを忘れないでください。

何か不明な点がありましたらお知らせください。

+0

ここに置いておかなければならない "another-constant-value here"の値。 – Rahul

+0

定数は、tableViewの高さが – iDeveloper

+0

であると思われる値の近似値です。私のサンプルプロジェクトは次のとおりです.https://github.com/Rahul63/Sample.git..canそれ...そして助けてください.. – Rahul

関連する問題