设置ZBar iOS SDK界面方向?

时间:2012-09-04 14:34:44

标签: ios cocoa-touch ios5 uiinterfaceorientation zbar-sdk

有谁知道如何设置ZBar SDK的界面方向?我需要它在横向视图而不是肖像中工作。我尝试添加[reader shouldAutorotateToInterfaceOrientation:UIInterfaceOrientationLandscapeRight];但它没有用。有什么想法吗?

3 个答案:

答案 0 :(得分:2)

围绕ZBarReaderView创建一个包装类并添加iOS 6方法:

-(BOOL) shouldAutorotate
{
    return NO;
}

-(NSUInteger) supportedInterfaceOrientations
{
    return UIInterfaceOrientationMaskLandscape;
}

然后使用您在内置ZBar中创建的类,确保将旧的iOS 5方法保留在同一个控制器中:

- (BOOL)shouldAutorotateToInterfaceOrientation (UIInterfaceOrientation)interfaceOrientation
{
    return (interfaceOrientation == UIInterfaceOrientationLandscape);
}

还有:

    self.reader.supportedOrientationsMask = ZBarOrientationMask(UIInterfaceOrientationMaskLandscape);

我知道现在已经很晚了,但我只是自己为iOS 6做了这个。

答案 1 :(得分:2)

我遇到了同样的问题并且解决了这个问题!

我只需要打电话:

[reader willRotateToInterfaceOrientation: toInterfaceOrientation duration: duration];

在包含ZbarReaderView的视图控制器的willRotate中。

答案 2 :(得分:0)

我不确定你的意思,但也许这有助于你...

[[UIApplication sharedApplication] setStatusBarOrientation: UIInterfaceOrientationLandscapeLeft animated:NO];

[[UIDevice currentDevice] setOrientation:UIInterfaceOrientationLandscapeLeft];