iOS:使用模式pageFlip在UITableViewController中产生奇怪的单元格animation

我想显示一个设置视图,所以我想我可以使用pageCurl模式风格。 我有一个UIViewController ,我介绍:

 Settings *settings = [[[Settings alloc] initWithStyle:UITableViewStyleGrouped] autorelease]; settings.view.backgroundColor = [UIColor scrollViewTexturedBackgroundColor]; settings.modalTransitionStyle = UIModalTransitionStylePartialCurl; settings.modalPresentationStyle = UIModalPresentationFullScreen; [self presentModalViewController:settings animated:YES]; 

当页面curl,以显示我的UITableViewController下面, cells subviews (标签和附件视图)似乎animation的位置,这看起来很可怕:

在这里输入图像说明在这里输入图像说明在这里输入图像说明

奇怪的是,animation从来没有发生在一个部分的顶部单元格。 这不会发生与其他modalTransitionStyle's所以我想知道为什么会发生这种情况。 这真是令人沮丧,因为我无法弄清楚如何阻止这种情况的发生。

想法?

如果你将tableView的autoResizingMask属性设置为UIViewAutoresizingNone ,我认为这不会发生。 这可能是页面curlanimation中的一个小错误。

我注意到,这个奇怪的animation(这也发生在UIButtons)的方向取决于在对象的属性检查器(在界面生成器)的控制部分中select的alignment方式。 我一直在修整所有的属性,并没有find解决办法。 🙁

编辑 :所以,我有三个UIButton在我看来(和一个UIPickerView ),在同一时间做这种奇怪的行为。 我创build了一个连接到一个UIButtons的属性。 然后,在这个视图的控制器的viewDidLoad ,我添加了以下行:

 _firstAffectedButton.titleLabel.autoresizingMask = UIViewAutoresizingNone; 

这对我来说固定,所有的button和select器! :? 奇怪,对吧?

任何人都可以解释为什么这是工作? 我感觉我正在做一些愚蠢的事来解决这个问题,但是我看不到它是什么。

编辑2 :原来是有一个更好,更干净的解决scheme,这个问题。 看到这个职位 。