2017-11-28 3 views
0

Meine App unterstützt Englisch und Arabisch. interactivePopGestureRecognizer funktioniert einwandfrei, wenn Sie Englisch verwenden, dh wenn Sie von links nach rechts wischen, erscheint viewController. Aber wenn ich arabisch benutze, habe ich die semanticContentAttribute von rechts nach links geändert.Ändern interactivePopGestureRecognizer Richtung

if([[[NSUserDefaults standardUserDefaults] objectForKey:@"LanguageCode"] isEqualToString:@"en"]) 
    { 
     [[UIView appearance] setSemanticContentAttribute:UISemanticContentAttributeForceLeftToRight];  //View for English language 
    } 
    else 
    { 
     [[UIView appearance] setSemanticContentAttribute:UISemanticContentAttributeForceRightToLeft];  //mirror view for Arabic language 
    } 

Aber die interactivePopGestureRecogniser ist immer noch von links nach rechts. Wie kann ich die Richtung von interactivePopGestureRecogniser so ändern, dass sie Arabisch unterstützt? Ich möchte von rechts nach links wischen, um den View-Controller in arabischer Sprache anzuzeigen.

+0

entfernen Sie die App aus dem Speicher und starten Sie erneut, diesmal sollte die Swipe-Richtung in Ordnung sein. –

Antwort

0

Nach vielen Versuchen, die einzige Lösung für mich gearbeitet, war dies:

Swift 3:

UIView.appearance(whenContainedInInstancesOf: [UITableViewCell.self]).semanticContentAttribute = .forceLeftToRight 
:

extension UIViewController { 
    open override func awakeFromNib() { 
     super.awakeFromNib() 
     navigationController?.view.semanticContentAttribute = .forceRightToLeft 
     navigationController?.navigationBar.semanticContentAttribute = .forceRightToLeft 
    } 
} 

Sie das semantische Attribut für bestimmte Arten wie ausschließen

Verwandte Themen