當前位置: 首頁>>代碼示例>>C#>>正文


C# BoxView.RelRotateTo方法代碼示例

本文整理匯總了C#中Xamarin.Forms.BoxView.RelRotateTo方法的典型用法代碼示例。如果您正苦於以下問題:C# BoxView.RelRotateTo方法的具體用法?C# BoxView.RelRotateTo怎麽用?C# BoxView.RelRotateTo使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在Xamarin.Forms.BoxView的用法示例。


在下文中一共展示了BoxView.RelRotateTo方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C#代碼示例。

示例1: MultiAnimationPage

		public MultiAnimationPage()
		{
			#region アニメーション用のボックスの生成
			// 移動値算出用のボックスを生成
			var boxViewBackground = new BoxView
			{
				Color = Color.Transparent,
			};

			// 全麵アニメーション用のボックスを生成
			var boxViewFront = new BoxView
			{
				Color = Color.Blue,
			};

			// 背麵アニメーション用のボックスを生成
			var boxViewBack = new BoxView
			{
				Color = Color.Red,
			};
			#endregion

			#region アニメーション製禦用のボタン類の設定
			// 移動アニメーション製禦用のボタンを生成
			var buttonMove = new Button
			{
				Text = "Animation",
			};
			// ボタン押し時の挙動
			buttonMove.Clicked += (sender, e) => 
			{
				var box = boxViewBackground;
				// 下降アニメーション用のレクタングル
				var moveDownRect = new Rectangle(0, box.Y + box.Height, box.Width, box.Height);
				// 上昇アニメーション用のレクタングル
				var moveUpRect = new Rectangle(0, box.Y, box.Width, box.Height);

				if (boxViewFront.Y == boxViewBackground.Y)
				{
					// 現在のレイアウトから指定のレイアウトにアニメーションさせる
					// ここではRectangleのサイズを変更していないので、単なる下方への移動アニメーション
					boxViewFront.LayoutTo(moveDownRect);
				}
				else
				{
					// 現在のレイアウトから指定のレイアウトに、指定時間かけてボックスをアニメーションさせる
					// ここではRectangleのサイズを変更していないので、単なる上方への移動アニメーション
					boxViewFront.LayoutTo(moveUpRect, 1000);
				}
			};

			// 拡大縮小アニメ製禦用のボタンを生成
			var buttonScale = new Button
			{
				Text = "Scale",
			};
			// ボタン押し時の挙動
			buttonScale.Clicked += (sender, e) => 
			{
				if (boxViewFront.Scale == 1)
				{
					// ボックスのスケールが1だった場合
					// 指定秒かけてScaleを0にする
					boxViewFront.ScaleTo(0, 500);
				}
				else
				{
					// ボックスのスケールが0だった場合
					// 指定秒かけてScaleを1にする
					boxViewFront.ScaleTo(1, 1000);
				}
			};

			// 回転アニメ製禦用のボタンを生成
			var buttonRelRotate = new Button
			{
				Text = "RelRotate",
			};
			// ボタン押し時の挙動
			buttonRelRotate.Clicked += (sender, e) => 
			{
				// ボタンが押されるたびにボックスを30度ずつ回転させる
				boxViewFront.RelRotateTo(30, 500);
			};				
			#endregion

			#region レイアウト関連
			// ボタン用のレイアウト
			var stack = new StackLayout
			{
				Children = 
				{
					buttonMove,
					buttonScale,
					buttonRelRotate,
				},
			};

			// ページ全體のレイアウト用のグリッドを生成
			var grid = new Grid
//.........這裏部分代碼省略.........
開發者ID:mattsuDev,項目名稱:Xamarin.Forms.AnimationSample,代碼行數:101,代碼來源:MultiAnimationPage.cs


注:本文中的Xamarin.Forms.BoxView.RelRotateTo方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。