Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/8.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 UITableView单独设置不准确,还是我在寻找其他设置?_Ios_Uitableview_Uikit - Fatal编程技术网

Ios UITableView单独设置不准确,还是我在寻找其他设置?

Ios UITableView单独设置不准确,还是我在寻找其他设置?,ios,uitableview,uikit,Ios,Uitableview,Uikit,这似乎是一个非常基本的操作,已经变得过于复杂 我有一个带有单元格的uitableview,我正在尝试使用heightForRowAtIndexPath调整单元格大小。我需要单元格根据其包含的文本调整大小,因此我使用属性字符串boundingRectWithSize,传入表格的宽度和窗口的高度,并使用出列单元格中的正确字体和UsesLineFragmentOrigin 在许多情况下,这会切断最后一行文本,我认为这是由于单元格的内容视图和表格视图边缘之间的偏移,因此当我给BoundingRectiz

这似乎是一个非常基本的操作,已经变得过于复杂

我有一个带有单元格的uitableview,我正在尝试使用heightForRowAtIndexPath调整单元格大小。我需要单元格根据其包含的文本调整大小,因此我使用属性字符串boundingRectWithSize,传入表格的宽度和窗口的高度,并使用出列单元格中的正确字体和UsesLineFragmentOrigin

在许多情况下,这会切断最后一行文本,我认为这是由于单元格的内容视图和表格视图边缘之间的偏移,因此当我给BoundingRectize表格宽度时,它会错误计算高度

我甚至可以在打开视图调试“ShowViewFrames”时看到这一点。内容视图的左右两侧有相等的偏移量

但是,我不知道如何在heightforrowatinexpath方法中访问此偏移量。通过视图调试,我知道表的宽度和contentview之间的差异是40,但我不想硬编码该值。我对其位置的最佳猜测是UITableView的一个名为“separatorInset”的属性,它是一个边集,具有“左”、“右”、“上”和“下”维度。但是,当我检查该属性时,除了“left”为20之外,所有维度都为零

因为我知道差异是40,如果我将宽度减去“left”*2传递给boundingRectWithSize,那么所有测试字符串的大小都是正确的

然而,这让我很困扰,因为我希望通过的是宽度-“左”-“右”,而仅仅使用left*2或多或少等于硬编码40

我是否遗漏了不动产,该不动产会告诉我左右偏移是什么,或者“分隔线”被窃听了,或者“左”“右”“上”“下”表示的不是明显的东西?
谢谢。

我觉得很傻,但我要找的术语是“保证金”。我要找的是一种叫做补偿的东西,但一般来说,我想的是保证金

起初我可能考虑过这一点,但在查看UITableView的文档时,我没有看到任何包含该词的属性

然而,UIView当然有一个名为“layoutMargins”的属性,这是我找不到的

在反复考虑tableview或tableviewcell,甚至是单元格的contentview是否控制了这一点之后,我相信这很容易让人感到困惑,因此对于任何想知道的人来说,这类事情都是由UITableView上的属性“layoutMargins”控制的

但是,我还是有点困惑,因为UITableViewCell有一个名为PreserveSPerViewLayoutMargins的属性(也来自UIView),该属性默认为“否”。在这种情况下,单元格的布局应该覆盖tableview的布局


似乎对于UITableViewCell,它默认为YES。我想我应该记住一些东西。

我觉得很傻,但我要找的术语是“保证金”。我要找的是一种叫做补偿的东西,但一般来说,我想的是保证金

起初我可能考虑过这一点,但在查看UITableView的文档时,我没有看到任何包含该词的属性

然而,UIView当然有一个名为“layoutMargins”的属性,这是我找不到的

在反复考虑tableview或tableviewcell,甚至是单元格的contentview是否控制了这一点之后,我相信这很容易让人感到困惑,因此对于任何想知道的人来说,这类事情都是由UITableView上的属性“layoutMargins”控制的

但是,我还是有点困惑,因为UITableViewCell有一个名为PreserveSPerViewLayoutMargins的属性(也来自UIView),该属性默认为“否”。在这种情况下,单元格的布局应该覆盖tableview的布局

似乎对于UITableViewCell,它默认为YES。我想是要记住的