Summary views implementation.
[profile/iot/apps/dotnet/fitness.git] / Fitness / Views / ExercisingView.xaml.cs
index 4cd154f..78a18eb 100644 (file)
@@ -1,5 +1,8 @@
+using System.Linq;
 using System.Threading;
 using System.Threading.Tasks;
+using Fitness.Models;
+using Fitness.ViewModels;
 using Tizen.NUI;
 using Tizen.NUI.BaseComponents;
 using Tizen.NUI.Binding;
@@ -32,11 +35,12 @@ namespace Fitness.Views
                 Size = new Size(500, 292),
             });
 
+        /// <summary>
+        /// Initializes a new instance of the <see cref="ExercisingView"/> class.
+        /// </summary>
         public ExercisingView()
         {
-            InitializeComponent();
-
-            PlayingView.PreviewStub.Relayout += OnPlayingViewRelayout;
+            Initialize();
         }
 
         /// <summary>
@@ -50,6 +54,17 @@ namespace Fitness.Views
             }
         }
 
+        /// <summary>
+        /// OnAppearing.
+        /// </summary>
+        protected override void OnAppearing()
+        {
+            if (cameraView.PreviewState == Tizen.Multimedia.CameraState.Created || cameraView.PreviewState == Tizen.Multimedia.CameraState.Captured)
+            {
+                cameraView.StartPreview();
+            }
+        }
+
         private static void OnIsPlayingChanged(BindableObject bindable, object oldValue, object newValue)
         {
             if (newValue is bool isPlaying && bindable is ExercisingView view)
@@ -95,6 +110,13 @@ namespace Fitness.Views
             return position;
         }
 
+        private void Initialize()
+        {
+            InitializeComponent();
+
+            PlayingView.PreviewStub.Relayout += OnPlayingViewRelayout;
+        }
+
         private async Task TriggerStates(bool isPlaying)
         {
             if (isInitialized)