我有一个表格视图,它的每个单元格的宽度都说 1024px ,所以我的要求是单击单元格表格视图的宽度会在逻辑上发生变化。我的表格视图有点复杂。每个单元格都包含一个在另一个类中定义的自定义视图。请帮我..
1 回答
我不相信有一种方法可以在不改变表格视图宽度的情况下修改单个单元格的宽度,仅使用tableView:heightForRowAtIndexPath:
.
因此,您可能想要更改单元格内自定义视图的宽度。
首先,要获取有问题的单元格,请cellForRowAtIndexPath:
在您需要的任何地方调用您的表格视图(如果您想更改点击时的宽度,那可能会在您的tableView:didSelectRowAtIndexPath:
.
要访问您的自定义视图,您可以通过tag
在创建单元格时或在故事板中设置自定义视图的属性,在 UITableViewCell 内为您的自定义视图提供一个标签号。然后,调用viewWithTag:
UITableViewCell 实例获取自定义视图,并修改width
其frame
属性。
另一个可能更合适的选择是UITableViewCell
为您的表格视图单元格使用自定义类。这意味着UITableViewCell
为您的自定义视图创建子类并创建一个属性,这将允许您通过 getter 访问自定义子视图,然后更改其frame
属性。
如果您需要更改自定义视图容器的宽度(当前是您的单元格),只需将自定义视图嵌入 a并以上述相同方式UIView
修改 UIView 的宽度而不是' 实例。UITableViewCell