已经在横向模式下打开AFOpenFlowView

时间:2010-03-22 20:37:33

标签: iphone

我在这里使用开源CoverFlow替代品:http://fajkowski.com/blog/2009/08/02/openflow-a-coverflow-api-replacement-for-the-iphone/

当我检测到某个视图已从纵向模式转变为横向模式时,我实例化AFCoverFlowView并将其推送到导航堆栈。

如果我这样做是为了回应

  • (无效)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation

封面流视图显示为手机仍处于纵向模式。

如果我推动视图以响应

  • (无效)willRotateToInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation

效果很好 - 视图在横向模式下显示,手机处于横向模式

不幸的是,设备不可靠获取willRotateToInterfaceOrientation消息。我已经尝试确保

[[UIDevice currentDevice] beginGeneratingDeviceOrientationNotifications];

在loadView中,但这对通知没有帮助。

所以,我的问题是:

  1. 有没有办法可靠地获取willRotateToInterfactOrientation?
  2. 如果不是

    1. 如何指示AFCoverFlowView以横向模式启动(如果设备已处于横向模式)

1 个答案:

答案 0 :(得分:2)

我在控制器类中对flowView进行了一次转换,如下所示:

    CGAffineTransform transform = self.view.transform;
transform = CGAffineTransformRotate(transform, (M_PI / 2.0));
self.view.transform = transform;

这对我的目的来说足够好。