2012-11-07 7 views
7

Ho uno UIViewController e al suo interno ho 3 UIWebView. Ho aggiunto scorrere a sinistra le mie webview in modo programmatico. In questo momento posso scorrere, ma solo 3 pagine e poi ripetere di nuovo. Voglio aumentare la mia attuale pagina e aggiungerla alla mia webView3, ma non so come dovrei farlo.Aumenta le pagine dopo ogni scorrimento Obiettivo-C

Mi piacerebbe darmi qualche suggerimento? Ho davvero problemi in questa parte!

Ecco il mio codice:

- (void)viewDidLoad 
{ 
[super viewDidLoad]; 
NSLog(@"test view"); 

NSURL *url = [NSURL fileURLWithPath:[ [ NSBundle mainBundle ] pathForResource: @"Name/Name1" ofType:@"html" ]]; 
NSURLRequest *request = [NSURLRequest requestWithURL:url]; 
[webView2 loadRequest:request]; 
[webView2 bringToFront]; 

    NSURL *url = [NSURL fileURLWithPath:[ [ NSBundle mainBundle ] pathForResource: 
@"Name/Name2" ofType:@"html" ]]; 
NSURLRequest *request = [NSURLRequest requestWithURL:url]; 
[webView3 loadRequest:request]; 

UISwipeGestureRecognizer *swipeLeft = [[UISwipeGestureRecognizer alloc] 
initWithTarget:self action:@selector(swipeLeftAction:)]; 
swipeLeft.direction = UISwipeGestureRecognizerDirectionLeft; 
swipeLeft.delegate = self; 
[self.view addGestureRecognizer:swipeLeft]; 
} 

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer 
shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer 
*)otherGestureRecognizer 
{ 
return YES; 
} 

currentPage è un numero intero e all'inizio si è 0. La mia domanda è come dovrei aggiungere il mio currentPage a webView3 in modo che quando ho strisciare che aumentare le mie pagine?

- (void)swipeLeftAction:(id)ignored 
{ 
NSLog(@"Swipe Left"); 
UIWebView *temp = webView2 ; 
webView2 = webView3; 
webView3 = webView; 
webView = temp; 

[webView2 bringToFront]; 
currentPage++; 
} 

Grazie in anticipo!

**** Edit: **

Questa pagina corrente non è collegato ad alcuna WebView, come posso ottenere questo aumento nel mio WebView **

+0

Stai ancora lavorando per risolvere questo problema? – propstm

risposta

0

Sulla base delle informazioni da questo post (Does UIGestureRecognizer work on a UIWebView?) Sembra che i riconoscitori di gesti e le visioni web non giochino sempre bene insieme, il motivo è dovuto ai riconoscimenti di gesti di una propria webview. Forse il modo migliore sarebbe aggiungere link all'interno della tua webview che quando viene toccato usa il tuo schema per incrementare currentPage

-(BOOL) webView:(UIWebView *)inWeb shouldStartLoadWithRequest:(NSURLRequest *)inRequest navigationType:(UIWebViewNavigationType)inType { 
    if ([[[inRequest URL] absoluteString] hasPrefix:@"mySchemeIncrementPage:"]) { 
    currentPage++; 
    NSLog(@"CURRENT PAGE COUNT: %i", currentPage); 
    return NO; 
    } 
} 
Problemi correlati