2015-06-01 113 views
0

图像的方向错误,我使用基于应用程序的支持碎渣厨房的JS。我的问题是我在MainWindow上设置的图像显示错误的方向,换句话说它显示固定的方向。我的应用程序要求所有内容都以横向模式显示,但每当我更改IPAD的方向时,XIB文件都会颠倒显示内容。IOS XIB故事板启动画面文件显示内部

我已经搜索了很多在互联网上,但我找不到任何可能的解决方案yet.This是有这个问题,除此之外我index.html文件工作正常,这是建立在construct2的唯一文件。

这是显示我的窗口的层次和形象

enter image description here

+0

嘿wolvorinePk,对于上述问题,你需要在关于窗口图像旋转,因为一个UIWindow总会给单一取向,这是肖像。 – CodeChanger

+0

我做了,它的工作原理,但假设如果用户在屏幕后面旋转他的ipad然后图片方向显示为倒置,它似乎会自动修复方向。我该如何解决这个问题? – wolvorinePk

+0

是为需要在方法的appDelegate“willChangeStatusBarOrientation”或“didChangeStatusBarOrientation”再次旋转图像。 – CodeChanger

回答

1

根据您的问题,您可以在AppDelegate的方法如下编写代码的图像。

- (void) application:(UIApplication *)application willChangeStatusBarOrientation:(UIInterfaceOrientation)newStatusBarOrientation 
     duration:(NSTimeInterval)duration 
{ 
    if (newStatusBarOrientation == UIInterfaceOrientationPortrait) 
     yourImage.transform  = CGAffineTransformIdentity; 
    else if (newStatusBarOrientation == UIInterfaceOrientationPortraitUpsideDown) 
     yourImage.transform  = CGAffineTransformMakeRotation(-M_PI); 
    else if (UIInterfaceOrientationIsLandscape(newStatusBarOrientation)) 
    { 
     float rotate = ((newStatusBarOrientation == UIInterfaceOrientationLandscapeLeft) ? -1:1) * (M_PI/2.0); 
     yourImage.transform  = CGAffineTransformMakeRotation(rotate); 
     yourImage.transform  = CGAffineTransformTranslate(yourImage.transform, 0, -yourImage.frame.origin.y); 
    } 
} 

与上面一样,您可以旋转背景图片。

+0

我已使用上面的代码试图和我声明的UIImage等的UIImage *提供yourname = [UIImage的ImageNamed:@“mypicture.png”],但它给错误属性“变换”不是类型的UIImage的对象发现??? – wolvorinePk

+0

好吧我已经宣布imageview作为yourImage并初始化图像里面。但仍然当我运行应用程序显示在错误的方向。我的XIB MainWindow就像启动画面,它应该显示几秒钟,然后它应该运行html5游戏的index.js文件。你认为上述方法不起作用吗?由于我上面提到的任何事情? – wolvorinePk

+0

根据你提到你正在使用html5进一步处理,但它不会影响任何本地代码你有没有调试你的代码? 尝试使用提供的方法调试您的代码。 如果此方法不是在改变方向的时间比调用您的应用程序只支持单一取向。 或者如果此方法调用比检查if-else条件是否满足。 – CodeChanger