2012-05-24 4 views
1

Мой взгляд изначально в ландшафтном режиме. при нажатии на кнопку открывается в портретном режиме, и все доходит до этой точки. проблема в том, что когда я вернусь с этой точки зрения в корневой вид, представление не будет правильно вращаться. Вот код я использую, чтобы повернуть изображение с портретной на альбомную,iPad поворачивается с портрета на пейзаж

-(void)viewWillDisappear:(BOOL)animated 
{ 
[super viewWillDisappear:animated]; 

//rotate the page to lansscape 
CGAffineTransform landscapeTransform = CGAffineTransformMakeRotation(-90*0.0174532925); 
landscapeTransform = CGAffineTransformTranslate (landscapeTransform, 0.0, 0.0); 

[self.navigationController.view setTransform:landscapeTransform]; 

self.navigationController.view.autoresizingMask = UIViewAutoresizingFlexibleWidth |UIViewAutoresizingFlexibleHeight;  
self.navigationController.view.frame = CGRectMake(0.0, 0.0, self.view.frame.size.width, self.view.frame.size.height); 
self.navigationController.view.center = CGPointMake (384.0, 544.0); 

[UIApplication sharedApplication].statusBarOrientation = UIInterfaceOrientationLandscapeLeft; 
} 

здесь моментальный снимок экрана корневой страницы в ландшафтном режиме после возвращения со страницы портретной

enter image description here

это то, как он должен выглядеть

enter image description here

+0

Проверьте свой вид ориентации xib. – Santhosh

+0

, конечно, это пейзаж! – Mona

ответ

1
-(void)viewWillDisappear:(BOOL)animated 
{ 

[super viewWillDisappear:animated]; 

//rotate the page to lansscape 
CGAffineTransform landscapeTransform = CGAffineTransformMakeRotation(-90*0.0174532925); 
landscapeTransform = CGAffineTransformTranslate (landscapeTransform, 0.0, 0.0); 

[self.navigationController.view setTransform:landscapeTransform]; 

self.navigationController.view.autoresizingMask = UIViewAutoresizingFlexibleWidth |UIViewAutoresizingFlexibleHeight;  
self.navigationController.view.frame = CGRectMake(0.0, 0.0, self.view.frame.size.width, self.view.frame.size.height+64); 
self.navigationController.view.center = CGPointMake (384.0, 512.0); 

[UIApplication sharedApplication].statusBarOrientation = UIInterfaceOrientationLandscapeLeft; 

} 

вещь, которую я должен был играть вокруг, чтобы настроить вид ландшафта, который был появляющимся после этой точки зрения, что в портретном режиме исчезает было это,

self.navigationController.view.frame = CGRectMake(0.0, 0.0, self.view.frame.size.width, self.view.frame.size.height+64); 
self.navigationController.view.center = CGPointMake (384.0, 512.0); 

Я играл с центральной точкой и высотой рамы для регулировки Это.

 Смежные вопросы

  • Нет связанных вопросов^_^