2016-08-05 25 views
1

Ich entwickle eine iPad App in Xamarin und wir müssen Orientierung bieten.Xamarin iOS8 +: Wie wird mit der Rotation umgegangen?

In meinem Szenario muss ich mehrere Ansichten in einer Bildlaufansicht hinzufügen, die ich durch Aktivieren von Paging verwalten.

Jetzt ist das Problem mit der Orientierung. Während das Gerät gedreht wird, muss ich die Inhaltsgröße der Bildlaufansicht aktualisieren.

In Xcode Ich bin in der Lage, die Sache mit folgenden Funktion zu verwalten:

-(void)viewWillTransitionToSize:(CGSize)size withTransitionCoordinator: (id<UIViewControllerTransitionCoordinator>)coordinator 
    { 
     // before rotation 
     [coordinator animateAlongsideTransition:^(id _Nonnull context) { 
      // during rotation: update our image view's bounds and centre 
     } completion:^(id _Nonnull context) { 
      // after rotation 
     }]; 
    } 

mich So kann jeder führen, wie ich diese Funktion in Xamarin zu nutzen? Ich möchte den Abschlussblock verwenden.

Antwort

2

In Xamarin.iOS sind die meisten iOS SDK-APIs an ähnlich benannte Methoden in C# gebunden.

Also für viewWillTransitionToSize würden Sie Folgendes in der View-Controller verwenden:

public override void ViewWillTransitionToSize(CoreGraphics.CGSize toSize, IUIViewControllerTransitionCoordinator coordinator) 
{ 
    coordinator.AnimateAlongsideTransition((IUIViewControllerTransitionCoordinatorContext obj) => { 
     // Define any animations you want to perform (equivilent to willRotateToInterfaceOrientation) 
    }, (IUIViewControllerTransitionCoordinatorContext obj) => { 
     // Completition executed after transistion finishes (equivilent to didRotateFromInterfaceOrientation) 
    }); 

    base.ViewWillTransitionToSize(toSize, coordinator); 
} 

https://developer.xamarin.com/api/member/UIKit.UIViewController.ViewWillTransitionToSize/

+0

ich schon, dass überprüft haben, aber ich habe Code in Drehbeendigungsblock wie in Xcode zu schreiben. In xcode stellen sie vor der Rotation, Rotation in Bearbeitung und nach der Rotation bereit. Ich möchte nach der Rotation verwenden. –

+0

Meine Antwort wurde mit dem Koordinatorcode aktualisiert. – BytesGuy