在我的应用程序中我有一个缓存数据的后台函数 - 工作正常。 我已经实现了UIView * cacheProgressView;这是对缓存机制进展的直观指示。 (它包含UIProgressBar等)
由于我想在我的所有应用程序视图中显示这一点(带有许多视图的UINavigation),我已将此添加到我的代理中,这样可以很好地处理它
[self.window addSubview:cacheProgressView];
问题:当我旋转设备并且因为cacheProgressView附加到窗口而不是视图时我无法将其设置到正确的位置 - 委托内部的以下函数永远不会被调用:
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
NSLog(@"Rotation detected from the delegate");
return YES;
}
我应该如何解决这个问题?
答案 0 :(得分:2)
您可以注册轮换通知......
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(didRotate:)
name:@"UIDeviceOrientationDidChangeNotification" object:nil];
- (void) didRotate:(NSNotification *)notification{
UIDeviceOrientation orientation = [[UIDevice currentDevice] orientation];
// do stuff
}