これは私の問題です。私はUITableViewに識別子 "cellidentifier"を持つCellプロトタイプとしてカスタムUITableViewCellを使用しています。このUITableViewCellでは、空のUIViewをcontentViewのセルに「bubbleView」という名前で追加しました。@IBOutletの接続があり、制約のトップ= 0、ボトム= 0、先行= 0、末尾= 0が追加されています。コントローラでiOS + Swift 2:空のビューでUITableViewCellの動的な高さが機能しない
(UITableViewDataSourceとUITableViewDelegateから継承する)、のviewDidLoad関数に私はこの行を追加しました:そして
override func viewDidLoad() {
...
self.mytable.delegate = self
self.mytable.dataSource = self
self.mytable.estimatedRowHeight = 100.0
self.mytable.rowHeight = UITableViewAutomaticDimension;
...
}
は、私は、このようにUITableViewDelegateの方法を実装:
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
var cell = tableView.dequeueReusableCellWithIdentifier("cellidentifier") as! myCustomCell!
if (cell == nil) {
cell = myCustomCell(style:UITableViewCellStyle.Subtitle, reuseIdentifier:"cellidentifier")
}
let myNewView = UIView(frame: CGRectMake(0, 10, randomWidth, random Height))
cell.bubbleView.addSubview(myNewView)
return cell
}
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return items.count
}
func numberOfSectionsInTableView(tableView: UITableView) -> Int {
return 1
}
そのコードで、私はセルにmyNewViewを追加しますが、セルはmyNewViewの高さに応じて実際の高さに調整されません。たとえば、myNewViewの高さが134の場合、カスタムビューのセルの高さは常に44となります。チュートリアルで言うようにlayoutIfNeededプロパティを追加しましたが、うまくいきません。誰でもこれの解決策がありますか?