相关疑难解决方法(0)

选择后,您可以在UITableViewCell上设置高度变化动画吗?

UITableView在我的iPhone应用程序中使用了一个,我有一个属于一个组的人员列表.我希望这样当用户点击特定的人(从而选择单元格)时,单元格的高度会增加,以显示多个UI控件来编辑该人的属性.

这可能吗?

cocoa-touch uitableview ios

390
推荐指数
9
解决办法
12万
查看次数

UITableViewCell高度动画与内容一起使用

我搜索过Stack Overflow和其他来源,但尽管有类似的问题标题我找不到解决方案.

我想要做的是与内容UITableViewCell height 一起制作动画.这是一个例子: 在此输入图像描述

电池中间有一个蓝色面板.我希望这个面板的高度与单元格本身一起动画.

我试过两种方法:

第一:更改行高和设置约束,如上图所示:

override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
    tableView.beginUpdates()
    tableView.endUpdates()
}

override func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
    let selectedIndexPath = tableView.indexPathForSelectedRow
    return indexPath == selectedIndexPath ? 120.0 : 70.0
}
Run Code Online (Sandbox Code Playgroud)

第二步:将行的高度设置为UITableViewAutomaticDimension,将高度约束添加到蓝色区域,如果用户点击单元格,则更改此约束.
链接到回购

两种方式都会立即改变蓝色区域的高度,然后使细胞高度变为动画.我需要蓝色区域与单元格高度一起平滑地动画,因此单元格之间的白色间距保持不变.

在此输入图像描述

cocoa-touch uitableview uiviewanimation ios swift

5
推荐指数
0
解决办法
486
查看次数

标签 统计

cocoa-touch ×2

ios ×2

uitableview ×2

swift ×1

uiviewanimation ×1