2011-11-30 82 views
1

我在我的應用程序中使用了一個POPover視圖,其中我有一個操作方法,因爲我正在實現彈窗視圖代碼。在ipad中設置彈出視圖的位置

我有一個按鈕,當我點擊按鈕彈出窗口視圖出現與表視圖,單擊單元格數據顯示在標籤上的單元格。

我的要求是什麼,當我點擊按鈕彈出視圖顯示在左上角,而按鈕是右上角的screen.i想設置點擊下方的按鈕彈出框,所以請更正我在哪裏出錯了。

-(IBAction) settingsGo:(id) sender{ 

    NSLog(@"Go"); 

    if (self.popoverController == nil) 

    { 
     PopOver *lang = [[PopOver alloc] 
         initWithNibName:@"PopOver" bundle:[NSBundle mainBundle]]; 

     UIPopoverController *popOver = 
     [[UIPopoverController alloc]initWithContentViewController:lang]; 

     popOver.delegate = self; 
     [lang release]; 

     self.popoverController = popOver; 
     [popOver release]; 
    } 
    [popoverController setPopoverContentSize:CGSizeMake(250, 150)]; 

    [popoverController presentPopoverFromRect:Button.frame inView:self.view permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES]; 
} 
+0

您可以將方向改變爲UIPopoverArrowDirectionDown ... –

+0

@Steve喬布斯燁我想,以及其沒有工作.. – crazy2431

+0

試試[發送幀],而不是button.frame –

回答

2
[popoverController presentPopoverFromRect:[sender frame] inView:self.view permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES]; 

這將這樣的伎倆..

0

改變這一行

[popoverController presentPopoverFromRect:[sender bounds] inView:self.view permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES]; 
+0

雅我改變了上述代碼仍然我的按鈕是右上角當我點擊彈出視圖顯示左上角..我想下面的按鈕。 – crazy2431

3

This會幫助你。

要設置

UIButton *btnAction; // A button to which UIPopoverController will belong. 
CGRect popoverFrame = btnAction.frame; 
[popoverController setPopoverContentSize:CGSizeMake(320, 355) animated:NO]; 
[popoverController presentPopoverFromRect:popoverFrame inView:self.view permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES]; 

setPopoverContentSize將設置UIPopoverController的大小。

+0

我正在關注此鏈接僅適用於我的應用程序..而在上面的鏈接時,點擊按鈕彈出視圖顯示全屏幕,我不想要。我想彈出視圖以出現與按鈕下方的特定幀大小 – crazy2431

+0

我有插入一些示例代碼,檢查出來。 –