我没有实现一个笨重、可能会出现错误的自定义表,而是使用了一个简单得多的旋转表选项。当我决定不初始化旋转的内容,而是希望旋转单元格本身并减少复杂单元格中的代码量时,问题就出现了。
下面的行紧接单元格配置之后。
这导致每个单元在负载时旋转90°,而不考虑方向:
cell.transform =
(CGAffineTransform)CGAffineTransformRotate(cell.transform, (M_PI / 2.0));
cellRotated = YES;此选项只旋转第一个单元格一次,但保留旋转:
if (!cellRotated) {
cell.transform =
(CGAffineTransform)CGAffineTransformRotate(cell.transform, (M_PI / 2.0));
cellRotated = YES;
}可以用现有函数(或其集合)跟踪单元格方向吗?
我在谷歌上什么都找不到。有相关的问题,但主要是关于表和肖像/景观UI的方向,所以反旋转的实现有很大的不同。
编辑
如果我将cellRotated = YES移动到viewDidAppear:,除一个单元格外,每个单元格都会被旋转。(然后,单元重用使得在这种情况下,每六个单元格中就有一个单独使用。)
1-5是好的,6是坏的,7-11是好的,12是坏的,等等(然后当我到达表的末尾时,它会以完全合乎逻辑但完全不受欢迎的方式改变)。
半路或后退一步,我不知道,但这就是我现在所拥有的。
发布于 2011-05-27 14:28:27
如果旋转是你唯一的改变,那你为什么不这样做呢,
cell.transform = CGAffineTransformMakeRotation(M_PI/2.0);然后,
if ( !CGAffineTransformIsIdentity (cell.transform) ) {
// Rotated.
}https://stackoverflow.com/questions/6139220
复制相似问题