2012-04-11 7 views
0

EDIT: Es war meine Schuld, siehe Antwort unten.UIPopoverController erscheint nicht auf presentPopoverFrom

Ich bin ziemlich verwirrt, warum dies nicht funktioniert jetzt, ich hoffe einer von euch einige Anregungen bieten können:

// Initialise and setup the sharing view: 
sharePopVC = [[SharePopViewController alloc] init]; 

// Create the pop-over we're gonna put it in: 
myPopover = [[UIPopoverController alloc] initWithContentViewController:sharePopVC]; 

// Confirm nothing is null or anything odd: 
NSLog(@"sharePopVC = %@", sharePopVC); 
NSLog(@"myPopover = %@",myPopOver); 

// Present the popover: 
// Not my ideal parameters but 'safe' ones: 
[myPopover presentPopoverFromRect:CGRectMake(100,100,100,100) inView:self.view permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES]; 

// Does it even believe that it's visible. 
if (myPopOver.isPopoverVisible) { 
    NSLog(@"Popover is there, apparently.."); 
} else { 
    NSLog(@"We concede the popover is NOT visible.."); 
} 

Console Ausgabe:

2012-04-11 17:31:37.345 sharePopVC = <SharePopViewController: 0x19c720> 
2012-04-11 17:31:37.348 myPopover = <UIPopoverController: 0x14b180> 
2012-04-11 17:31:37.349 We concede the popover is NOT visible.. 

Und natürlich zeigt sich nichts. Ich habe fast identischen Code anderswo gut funktioniert. Was könnte verhindern, dass es auftaucht?

Ich habe versucht, es von einem UIBarButtonItem zu präsentieren, falls es etwas mit meinem Rect zu tun hatte, aber es hat nicht geholfen. Ich habe auch gewaltsam versucht, den Rahmen meiner sharePopVC.view für den Fall, dass es irgendwie alle auf 0 gesetzt und verursacht ein Problem, aber keine Freude dort entweder.

self.view In diesem Fall ist die Hauptansicht mit einigen Unteransichten wie einem UINavigationController und UIScrollView enthalten.

Danke.

Antwort

0

Ich fand das heraus, und es tut mir leid zu sagen es war ich dumm.

hatte ich myPopover und myPopOverbeide erklärt und ich war zwischen ihnen in der oben springen, so offensichtlich ist es nicht funktioniert ..

Also ich denke, die Lektion ist; wenn etwas nicht funktioniert, lesen Sie es sorgfältig!