Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/101.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 尽管我在其中有内容,但我仍然可以查看零高度_Ios_Swift_Uitableview_Uistackview - Fatal编程技术网

Ios 尽管我在其中有内容,但我仍然可以查看零高度

Ios 尽管我在其中有内容,但我仍然可以查看零高度,ios,swift,uitableview,uistackview,Ios,Swift,Uitableview,Uistackview,我在UITableViewCell中有UIStackView,其中有四个长文本标签。 在第一次加载中,我只在单元格中显示高度为44的第一个标签,并隐藏其他三个标签,StackView正确显示。然后,当我单击tableViewCell时,我需要展开单元格并显示其他三个标签。我显示它们并重新加载TableView,但我的StackView之后的高度为零,并且所有四个标签的高度也为零。我只在IOS 10.1中遇到了这个问题,当我使用带有短文本StackView的标签时,它工作得很好 这是我的代码: f

我在UITableViewCell中有UIStackView,其中有四个长文本标签。 在第一次加载中,我只在单元格中显示高度为44的第一个标签,并隐藏其他三个标签,StackView正确显示。然后,当我单击tableViewCell时,我需要展开单元格并显示其他三个标签。我显示它们并重新加载TableView,但我的StackView之后的高度为零,并且所有四个标签的高度也为零。我只在IOS 10.1中遇到了这个问题,当我使用带有短文本StackView的标签时,它工作得很好

这是我的代码:

func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
    var cell  = tableView.cellForRowAtIndexPath(indexPath) as! AboutUsTableViewCell
    cell.firstLabel.hidden = isExpanded
    cell.secondLabel.hidden = isExpanded
    cell.thirdLabel.hidden = isExpanded
    isExpanded = !isExpanded
    tableView.reloadData()
}


谢谢大家!

将标签行数设置为0,并将下面的代码添加到viewDidLoad方法中

self.tableView.estimatedRowHeight = 44.0 //or cell height
self.tableView.rowHeight = UITableViewAutomaticDimension

您应该在更改
ishiden
属性后更新表。这应该是一个技巧

func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
    var cell  = tableView.cellForRowAtIndexPath(indexPath) as! AboutUsTableViewCell
    cell.firstLabel.hidden = isExpanded
    cell.secondLabel.hidden = isExpanded
    cell.thirdLabel.hidden = isExpanded
    isExpanded = !isExpanded
    tableView.beginUpdates()
    tableView.endUpdates()
}

此外,请检查是否在
UIStackView
单元格内使用
UITableView
我已经设置了UITableView自动标注尺寸,并且我所有的标签都有0行。正如我所说,IOS 9和IOS 10.2的所有功能都非常完美。我只对IOS 10.1有问题