BeerDrinkin.iOS.TabBarController.SetupTabChangeAnimation C# (CSharp) Method

SetupTabChangeAnimation() public method

public SetupTabChangeAnimation ( ) : void
return void
		void SetupTabChangeAnimation()
		{
			ShouldSelectViewController = (tabController, controller) =>
			{
				if (SelectedViewController == null || controller == SelectedViewController)
					return true;

				var fromView = SelectedViewController.View;
				var toView = controller.View;

				var destFrame = fromView.Frame;
				const float offset = 25;

				//Position toView off screen
				fromView.Superview.AddSubview(toView);
				toView.Frame = new CGRect(offset, destFrame.Y, destFrame.Width, destFrame.Height);

				UIView.Animate(0.1,
					() =>
					{
						toView.Frame = new CGRect(0, destFrame.Y, destFrame.Width, destFrame.Height);
					}, () =>
					{
						fromView.RemoveFromSuperview();
						SelectedViewController = controller;
					});
				return true;
			};
		}
	}