2013-03-17 17 views
5

Sunuyu oluşturmak için sunum stiliyle bir görünüm denetleyicisi sunmaya çalışıyorum. Bununla birlikte, görünüm denetleyicisi göründüğünde, ekranın sağında, merkezde değil, konumlandırılmıştır. Bunun neden olduğunu veya ne yapmam gerektiğini bilmiyorum. Bu koordinatların hepsi doğru!Form sayfası olarak sunulduğunda görüntüleme denetleyicisini ortalamanın zorluğu

CGSize size = CGSizeMake(650, 550); 

//custom init for ViewController so I can position stuff correctly 
ViewController *vc = [[ViewController alloc] initWithSize:size]; 
UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:vc]; 

nav.modalPresentationStyle = UIModalPresentationFormSheet; 
nav.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal; 

[self presentModalViewController:nav animated:YES]; 

nav.view.superview.frame = CGRectMake(0, 0, size.width, size.height); 
nav.view.superview.center = self.view.center; 

enter image description here

+0

Otomatik döndürme mekanizmasına bulaştın mı? Sesi döndüyse sayfanın yerleştirileceği gibi görünüyor, bu yüzden ev düğmesi sağda – CodaFi

+0

@CodaFi Hayır, yok. Uygulama portre modunda çalışıyor ve sayfanın bulunduğu yer burası. Son iki satırlık kodu (sayfayı yeniden boyutlandırmak ve ortalamaktan sorumlu) kaldırdığımda, sayfa ortalanır, ancak istediğim boyut değil (650 x 550). –

cevap

1

Ben son iki satırı kaldırmak zaman, ben aradığınız davranış olmayı kabul olsun gibi görünüyor.

CGSize size = CGSizeMake(650, 550); 

//custom init for ViewController so I can position stuff correctly 
ViewController *vc = [[ViewController alloc] initWithSize:size]; 
UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:vc]; 

nav.modalPresentationStyle = UIModalPresentationFormSheet; 
nav.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal; 

[self presentModalViewController:nav animated:YES]; 

Ben bu iki satır ile yapmaya çalışıyor, ama onlar olmadan görünümü merkezli tam olarak ne olduğundan emin değilim.

+0

Görünümü farklı şekilde nasıl boyutlandırabilirim? Ben onun 650 x 550 olmasını istiyorum. –

+0

Buradaki cevaba bir bakın: http://stackoverflow.com/questions/8972990/how-to-resize-a-modalviewcontroller-with-uimodalpresentationpagesheet – Jsdodgers

+8

iOS7 Beta 5'de ne UIModalTransitionStyleFlipHorizontal veya form sayfalarını ortalamak için UIModalTransitionStyleCoverVertical görünür. Sadece UIModalTransitionStyleCrossDissolve çalışır. –

İlgili konular