2016-09-28 1 views
0

Also ich benutze Code basierend auf einem epub-Reader-App und ich versuche, es zu ändern, um Wischgesten zu arbeiten. Ich brauche nur linke und rechte Gesten, um die Seite vorwärts oder rückwärts zu wechseln und Grenzen, die auf das Ende oder den Anfang von epub prüfen. Ich habe den Code identifiziert, der die Seiten und die Tasten an die nächsten und vorherigen Schaltflächenfunktionen dieses Java-Scriptaufrufs umschaltet, um dies zu tun. Die Funktion, die das Java-Skript und das WKWebView lädt, befindet sich in der Funktion - (void)loadView. Die Funktion ist unten, mein Versuch ist die *UISwipeGestureRecognizer Deklaration, die auskommentiert wurde.Wischgeste zu epub ios app hinzufügen

Jede Hilfe wird sehr geschätzt werden, ich habe bereits die ursprünglichen Entwickler um Hilfe gebeten, aber sie haben noch nicht geantwortet. Ich dachte, ich würde die Meinung eines anderen bekommen.

Danke

+0

Hoppla! Ich habe versehentlich einen */so verlegt, dass mein Code durcheinander ist. Ich entschuldige mich –

Antwort

0

Eine Lösung gefunden. Ich benutzte UISwipeGestureRecogniser eine delegierte Wischaktionen auf beiden UIWebview und WKWebview, dann habe ich Funktionen erstellt, um diese Aktionen zu behandeln. Obwohl dieser Code spezifisch für dieses Framework ist, kann er für jemanden relevant sein. Mein Code ist unten:

-(void) viewDidLoad{ 
    [super viewDidLoad]; 
    UISwipeGestureRecognizer *swipeRight = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(swipeRightAction:)]; 
    //swipeRight.direction = UISwipeGestureRecognizerDirectionRight; 
    [swipeRight setDirection:UISwipeGestureRecognizerDirectionRight]; 
    //swipeRight.delegate = self; 
    [m_webViewUI addGestureRecognizer:swipeRight]; 
    [m_webViewWK addGestureRecognizer:swipeRight]; 



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

ich kartiert dann die Zurück- und Vorwärts-Gesten auf Seite dreht:

-(void)swipeLeftAction:(UISwipeGestureRecognizer *) swipe{ 
[self executeJavaScript:@"ReadiumSDK.reader.openPageNext()" completionHandler:nil]; 
NSLog(@"%s","Swipe Left");} 

-(void)swipeRightAction:(UISwipeGestureRecognizer *) swipe{ 
    [self executeJavaScript:@"ReadiumSDK.reader.openPagePrev()" completionHandler:nil]; 
    NSLog(@"%s","Swipe Right"); 

Bounds Überprüfung ist durch die Frameworks Java Script handhaben.

Verwandte Themen