mainActivity.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);//竖屏
竖屏是JAVA代码
另外再改动COCOS2D-X坐标系统(C++代码)(20140602这是ANDROID和IOS都须要的):
CCEGLView *view = CCEGLView::sharedOpenGLView();
CCSize czFrame = view->getFrameSize();
view->setFrameSize(czFrame.height,czFrame.width);
view->setDesignResolutionSize(320,480,kResolutionExactFit);
设置回来代码和上面的相反
设置android-14转屏就崩溃,设置android-11就不崩溃,不知道为什么。
(20140511)
20140602总结IOS下要做的事:
设备旋转不要打钩:
在RootViewController里,代码控制是否旋转,你要改动这些代码来适应你自己的程序:
- (BOOL) shouldAutorotate {
bool bIsPortraitCur = ( self.interfaceOrientation == UIInterfaceOrientationPortrait );
if( bIsPortraitCur != s_needOrientation )
return YES;
else
return NO;
return YES;
// return NO;
}
// For ios6, use supportedInterfaceOrientations & shouldAutorotate instead
- (NSUInteger) supportedInterfaceOrientations{
#ifdef __IPHONE_6_0
return UIInterfaceOrientationMaskAll;
#endif
}
旋转的IOS代码:
extern bool s_needOrientation;
bool SetScrnOrentation( bool bIsPotrit ){
if(s_needOrientation == bIsPotrit )
return false; s_needOrientation = bIsPotrit ;
[[UIDevice currentDevice] performSelector:@selector(setOrientation:)
withObject:
bIsPotrit ? (id)UIDeviceOrientationPortrait : (id)UIDeviceOrientationLandscapeRight];
//[[UIApplication sharedApplication] setStatusBarOrientation:bIsPotrit?UIInterfaceOrientationPortrait:UIInterfaceOrientationLandscapeRight]; return true;
}