2012-11-15 3 views
1

J'essaie de créer un pop over qui affiche un webView. Jusqu'à présent, j'ai un bouton qui, lorsqu'il est pressé, génère un pop-over, mais la vue web ne s'affiche pas. En utilisant NSlog, je peux voir que la méthode viewDidLoad tire. Voici le code que j'ai jusqu'à présent:iOS PopOver avec Webview

Dans le fichier popover.h: @interface PopUpViewController: UIViewController

@property (forte, nonatomic) IBOutlet UIWebView * liveTimingPopUp;

@End

Dans le fichier popover.m:

#import "PopUpViewController.h" 

@interface PopUpViewController() 

@end 

@implementation PopUpViewController 

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil 
{ 
    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil]; 
    if (self) { 
     // Custom initialization 
    } 
    return self; 
} 

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 
    [self loadWebView]; 

} 

- (void) loadWebView 
{ 
    // Do any additional setup after loading the view. 
    NSString *fullURL = @"www.google.com"; 
    NSURL *url = [NSURL URLWithString:fullURL]; 
    NSURLRequest *requestObj = [NSURLRequest requestWithURL:url]; 
    [_liveTimingPopUp loadRequest:requestObj]; 
    [self loadView]; 

    NSLog(@"PopUpView Fired"); 
} 

- (void)didReceiveMemoryWarning 
{ 
    [super didReceiveMemoryWarning]; 
    // Dispose of any resources that can be recreated. 
} 

@end 

Dans la vue de commande contenant le bouton qui génère le fichier popover .h:

#import <UIKit/UIKit.h> 

@interface SecondViewController : UIViewController 
{ 
    UIInterfaceOrientation intOr; 
    // APICallsViewController *pendingApiCallsController; 

} 
@property (strong, nonatomic) IBOutlet UIWebView *liveVideoPage; 
- (IBAction)liveTimingButton:(id)sender; 
@property (strong, retain) UIPopoverController *popOver; //declare UIPopOver so that you have an object to work with 

-(void) loadVideo; 
@end 

Dans la vue de commande contenant le bouton qui génère le fichier popover .m:

#import "SecondViewController.h" 
#import "PopUpViewController.h" 

@interface SecondViewController() 

@end 

@implementation SecondViewController 

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 
    // Do any additional setup after loading the view, typically from a nib. 
    [self loadVideo]; 

} 

- (void) loadVideo 
{ 
    NSString *fullURL = @"http://192.168.130.230:1935/live/camera.stream/playlist.m3u8"; 
    NSURL *url = [NSURL URLWithString:fullURL]; 
    NSURLRequest *requestObj = [NSURLRequest requestWithURL:url]; 
    [_liveVideoPage loadRequest:requestObj]; 
} 


-(void)willAnimateRotationToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration 
{ 
    intOr = self.interfaceOrientation; 
    if (intOr == UIInterfaceOrientationPortrait) 
    { 
     NSLog(@"portrait"); 

     _liveVideoPage.frame = CGRectMake(10, 100, 600, 550); 
    } 
    else 
    { 
     NSLog(@"landscape"); 

     _liveVideoPage.frame = CGRectMake(200, 100, 600, 550); 
    } 
} 


- (void)didReceiveMemoryWarning 
{ 
    [super didReceiveMemoryWarning]; 
    // Dispose of any resources that can be recreated. 
} 

- (IBAction)liveTimingButton:(id)sender 
{ 
    if ([_popOver isPopoverVisible]) { 
     [_popOver dismissPopoverAnimated:YES]; 
    } 

    else 
    { 
    PopUpViewController *PUVC = [[PopUpViewController alloc]init];//instantiate ViewController for popOver's content 
    _popOver = [[UIPopoverController alloc] /* create Popover*/initWithContentViewController:PUVC]; //fills popover with PopUpViewController 
    _popOver.popoverContentSize = CGSizeMake(800, 250); 
    [_popOver presentPopoverFromBarButtonItem:sender permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES]; //specifies where the popover is coming from...the liveTiming Bar button 
    } 
} 
@end 

Toute aide serait grandement appréciée!

Répondre

0

D'où le webview est-il censé provenir? Le VC ne reçoit pas un nom xib .. donc la sortie ne parie jamais

+0

En ce moment, c'est juste sur le storyboard. Je ne suis pas vraiment sûr de savoir comment faire ce travail. Je suis vraiment nouveau à ios et à l'objectif C. Je suis un gars C++. – Alan

Questions connexes