Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/93.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 UITableVIewCell中按比例大小的UIImageView始终无法正常运行_Ios_Uitableview_Uiimageview_Constraints_Uistoryboard - Fatal编程技术网

Ios UITableVIewCell中按比例大小的UIImageView始终无法正常运行

Ios UITableVIewCell中按比例大小的UIImageView始终无法正常运行,ios,uitableview,uiimageview,constraints,uistoryboard,Ios,Uitableview,Uiimageview,Constraints,Uistoryboard,我在tableview单元格中有一个UIImage,我想在圆圈中显示它。当我的表格第一次被渲染时,图像显示为菱形而不是圆形,但当我在第一次渲染图像后进入同一屏幕时,图像显示为圆形。我发现了问题,但我不知道解决办法。问题是:在故事板中,UIImage视图的宽度和高度设置为135,这是一个随机数,因为我假设可以在情节提要中使用以下两个约束覆盖它:1)将高度设置为与superview高度成比例的约束,2)UIImage的高度和宽度的比例为1:1。以下是我的约束的快照: 我将打印添加到tableVie

我在tableview单元格中有一个UIImage,我想在圆圈中显示它。当我的表格第一次被渲染时,图像显示为菱形而不是圆形,但当我在第一次渲染图像后进入同一屏幕时,图像显示为圆形。我发现了问题,但我不知道解决办法。问题是:在故事板中,UIImage视图的宽度和高度设置为135,这是一个随机数,因为我假设可以在情节提要中使用以下两个约束覆盖它:1)将高度设置为与superview高度成比例的约束,2)UIImage的高度和宽度的比例为1:1。以下是我的约束的快照:

我将打印添加到tableView:cellForRowAtIndexPath,在这里我将布局更改为圆形,以查看UIImage的宽度。第一次打印135,第二次打印100。这意味着比例大小限制在第一轮中无效,但在第二轮之后有效。我尝试将故事板中的固定高度和宽度设置为零,但没有帮助,它将图像显示在一个正方形中。我如何始终实施比例约束?或者禁用此特定视图的固定大小属性?谢谢

另外,以下是tableView中的代码:CellForRowatineXpath,它将布局更改为圆形(该方法中没有其他方法涉及图像或布局):


尝试在ViewWillLayoutSubView中重新加载表

-(void)viewWillLayoutSubviews{

    [super viewWillLayoutSubviews];
    [self.tableView reloadData];
}

imageView的内容模式是什么?内容模式是按比例填充。为什么不按比例填充?“按填充比例缩放”将拉伸图像。是的,我确实拉伸了图像,但与帧大小无关。请尝试在TableViewWillDisplayCell Delegates中使用代码。这不起作用。程序挂起在updateTableView中,通过调用重载数据递归地调用自己。
-(void)viewWillLayoutSubviews{

    [super viewWillLayoutSubviews];
    [self.tableView reloadData];
}