2012-11-24 55 views
0

我正在與iPad應用程序一起工作。我試圖通過點擊按鈕來顯示UIPopOverController。但是,當我用我的下面的代碼做到這一點,它看起來彈出錯誤的高度。彈出窗口大小無法更改,看起來高度錯誤

這裏是我的代碼。

self.contentSizeForViewInPopover = CGSizeMake(320, 500); 
SignatureViewController *signatureViewController = [[SignatureViewController alloc]initWithNibName:@"SignatureViewController" bundle:nil]; 
signatureViewController.delegate = self; 
signatureViewController.title = @"Draw Signature"; 

UINavigationController *navController = [[UINavigationController alloc]initWithRootViewController:signatureViewController]; 

UIPopoverController *popover = [[UIPopoverController alloc] initWithContentViewController:navController]; 

UIBarButtonItem *doneButton = [[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemDone target:self action:@selector(doneButtonPressed:)]; 
[signatureViewController.navigationItem setRightBarButtonItem:doneButton]; 

[popover presentPopoverFromRect:signatureImageView.frame inView:self.view permittedArrowDirections:UIPopoverArrowDirectionDown animated:YES]; 
self.popOverController = popover; 

我的popover看起來像這樣。

enter image description here

其還示出了導航欄上。我在我的代碼中做錯了什麼?任何幫助,將不勝感激。

回答

1

夫婦的事情,你可以點擊這裏:

  • self.contentSizeForViewInPopover = CGSizeMake(320, 500);確實應該是你signatureViewController定義(viewDidLoad中舉例)內
  • 嘗試改變UIPopoverArrowDirectionDownUIPopoverArrowDirectionAny。有可能只是沒有足夠的空間來顯示該彈出窗口給定的位置和箭頭指向要求
+0

我明白了。你的第二點做到了訣竅。 –