iphone - 移动 tableview 时裁剪 UITableviewcell

标签 iphone objective-c ios ipad uitableview

我正在创建一个 UITableview 并应用转换 -M_PI_2 以便 tableview 水平滚动。

每个单元格也旋转了 M_PI_2,以便在水平模式下正确显示。 当我用数据初始化它时,这些单元格是完美的。一切正常。

现在我将 tableview 高度调整为原始高度的 75% 并将其向下移动 25%,上半部分单元格被隐藏(我在 tableview 上设置了 clipstobounds)。 我使用函数 setFrame:

调整 uitableview 的框架大小

即使在 [tableview reload] 之后也不会改变。

既然父级(tableview)被移动并调整了大小,子级(cells)不应该相对于它移动吗?

如果不是,那么执行以下操作的正确方法是什么:

  1. 为水平滚动填充一个 uitableview 和 tranform
  2. 根据用户输入调整框架大小
  3. 单元格还应根据 uitableview 的新框架自行对齐。

最佳答案

当您应用这样的变换时,您正在旋转层,因此您需要了解 CALayer 几何和 UIView 几何之间的差异

苹果 Layer Geometry文档对此进行了很好的描述,但基本上我认为您需要调整 View 层的 anchorPoint 值

self.viewToRotate.layer.anchorPoint = CGPointMake(0.0f, 0.0f); //not sure of the actual value here

关于iphone - 移动 tableview 时裁剪 UITableviewcell,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12160617/

相关文章:

iphone - 学习Core Animation有什么好书?

iphone - dispatch_async 在某处滞后,找不到哪里。有 NSLog 问题吗?

iphone - UIFileSharingEnabled 没有效果

iphone - 如何让 AVAudioPlayer 输出到扬声器

ios - 如何将图像的位置和比例转移到其他 View ?

iphone - 自定义 MKAnnotationView - 如何捕捉触摸而不关闭标注?

ios - MQMapView 设置区域 : causes app to crash

ios - 在 Core Data 中只有一个实体实例

ios - UITableViewAutomaticDimension 不适用于 UIImageView

ios - 自定义tableHeaderView隐藏单元格