Xamarin iOS8+;:如何处理旋转?
我正在Xamarin开发一个iPad应用程序,我们必须提供定位支持 在我的场景中,我必须在一个滚动视图中添加多个视图,我通过启用分页来管理该视图 现在的问题是定位。当设备旋转时,我更新了滚动视图的内容大小 在Xcode中,我可以使用以下功能来管理东西:Xamarin iOS8+;:如何处理旋转?,ios,xamarin.ios,orientation,Ios,Xamarin.ios,Orientation,我正在Xamarin开发一个iPad应用程序,我们必须提供定位支持 在我的场景中,我必须在一个滚动视图中添加多个视图,我通过启用分页来管理该视图 现在的问题是定位。当设备旋转时,我更新了滚动视图的内容大小 在Xcode中,我可以使用以下功能来管理东西: -(void)viewWillTransitionToSize:(CGSize)size withTransitionCoordinator: (id<UIViewControllerTransitionCoordinator>
-(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
}];
}
-(void)视图将转换大小:(CGSize)带有转换协调器的大小:(id)协调器
{
//轮换前
[coordinator AnimateLongsideTransition:^(id_非空上下文){
//旋转期间:更新图像视图的边界和中心
}完成:^(id_非空上下文){
//旋转后
}];
}
那么有谁能指导我如何在Xamarin中使用这个函数呢?我想使用完成块。在Xamarin.iOS中,大多数iOS SDK API都绑定到C#中类似命名的方法 因此,对于
viewwillTransitionOnToSize
,您可以在视图控制器中使用以下内容:
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);
}
我已经检查过了,但我必须像在Xcode中一样在旋转完成块中编写代码。在xcode中,它们提供了旋转前、旋转中和旋转后。我想在旋转后使用。