{"id":469,"date":"2020-07-28T19:12:38","date_gmt":"2020-07-28T19:12:38","guid":{"rendered":"https:\/\/serkanseker.com\/?p=469"},"modified":"2021-01-16T12:28:47","modified_gmt":"2021-01-16T12:28:47","slug":"xamarin-forms-progressbar","status":"publish","type":"post","link":"https:\/\/serkanseker.com\/tr\/xamarin-forms-progressbar\/","title":{"rendered":"Xamarin.Forms ProgressBar"},"content":{"rendered":"\n<p>We all know what the <strong>ProgressBar <\/strong>is. We show it sometimes on the screen or in the notification bar to show any progress within the program. For example, when downloading a file, what percentage of the download is in the notification bar. Or we&#8217;ll see the time in a progress bar in music player apps. Thus, we aim to increase the user experience of the mobile application. That&#8217;s why the <strong>ProgressBar <\/strong>is so important for a mobile app.<\/p>\n\n\n\n<p>At the end of this article, you will learn how to use progress bars in Xamarin.Forms applications. You will also be able to customize the layout of the progress bars and adapt them to your design. This time, I&#8217;ll use one of the <a href=\"https:\/\/serkanseker.com\/best-nuget-packages\/\" target=\"_blank\" rel=\"noreferrer noopener\">most useful plugins<\/a>, Syncfusion.Xamarin.SfProgressBar, not with Xamarin&#8217;s own controls.<\/p>\n\n\n\n<p>So let&#8217;s get started.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Step 1 &#8211; Install Syncfusion.Xamarin.SfProgressBar Plugin<\/h2>\n\n\n\n<p>First, you need to install\u00a0<a href=\"https:\/\/www.nuget.org\/packages\/Syncfusion.Xamarin.SfPopupLayout\" target=\"_blank\" rel=\"noreferrer noopener\"><a href=\"https:\/\/www.nuget.org\/packages\/Syncfusion.Xamarin.SfProgressBar\/\">Syncfusion.Xamarin.SfProgressBar<\/a><\/a>\u00a0plugin in your Xamarin.Forms project. There are two ways to do this. You can find details in the\u00a0<a href=\"https:\/\/serkanseker.com\/install-and-manage-nuget-packages\/\" target=\"_blank\" rel=\"noreferrer noopener\">How To Install and Manage NuGet Packages<\/a>\u00a0article.<\/p>\n\n\n\n<p>You can install the plugin by typing the following command on the Package Manager command line.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Install-Package Syncfusion.Xamarin.SfProgressBar -Version 18.2.0.47<\/code><\/pre>\n\n\n\n<p>Alternatively, you can install the plugin from NuGet Package Manager. First, right click on the project folder. Then click on Manage NuGet Packages for Solution option. Go to the Browse tab in the window that opens. Finally, type Syncfusion.Xamarin.SfProgressBar in the Search bar and search. And install the plugin on all platforms.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/serkanseker.com\/wp-content\/uploads\/2020\/07\/ProgressBar-plugin-download.jpg\" alt=\"Install Syncfusion ProgressBar Plugin\" class=\"wp-image-471\"\/><figcaption>Install Syncfusion ProgressBar Plugin<\/figcaption><\/figure>\n\n\n\n<p>If you use Syncfusion plugins in the project without Registration License, you will get a warning popup. To use this plugin without any warning messages, you must register with Syncfusion and obtain a Registration License. I explained&nbsp;<a href=\"https:\/\/serkanseker.com\/syncfusion-community-license-key\/\" target=\"_blank\" rel=\"noreferrer noopener\">how to register for Syncfusion and get License<\/a>.<\/p>\n\n\n\n<p>Let me explain briefly as follows.<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>First create an account in Syncfusion.<\/li><li>Then get a Registration License for Xamarin.Forms apps.<\/li><li>Finally, add this license to the&nbsp;<strong>App()<\/strong>&nbsp;constructor method of&nbsp;<strong>App.xaml.cs<\/strong>&nbsp;class as follows.<\/li><\/ol>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-csharp\">public App()\n{\n    Syncfusion.Licensing.SyncfusionLicenseProvider.RegisterLicense(&quot;YOUR REGISTER LICENCE&quot;);\n    InitializeComponent();\n    MainPage = new App1();\n}<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Step 2 &#8211; Launch the SfProgressBar on Each Platform<\/h2>\n\n\n\n<p>To use the SfProgressBar plugin in Xamarin, you must launch it on a platform specific. So, after installing the plugin, you cannot use it directly.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Android<\/h3>\n\n\n\n<p>Android platform does not require any additional configuration to render the progress bar.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">iOS<\/h3>\n\n\n\n<p>In AppDelegate class, call the SfCircularProgressBarRenderer.Init() or SfCircularProgressBarRenderer.Init() in the FinishedLaunching method<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-csharp\">public override bool FinishedLaunching(UIApplication app, NSDictionary options) \n{   \/\/ Other codes\n    global::Xamarin.Forms.Forms.Init();\n    \/\/ Add the below line if you are using SfLinearProgressBar.\n    Syncfusion.XForms.iOS.ProgressBar.SfLinearProgressBarRenderer.Init();\n    \/\/ Add the below line if you are using SfCircularProgressBar.  \n    Syncfusion.XForms.iOS.ProgressBar.SfCircularProgressBarRenderer.Init();\n    LoadApplication(new App()); \n    \/\/ Other codes\n}<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Universal Windows Platform (UWP)<\/h3>\n\n\n\n<p>Initialize the progress bar assemblies in App.xaml.cs in UWP project as demonstrated. This is required to deploy the application with progress bar in&nbsp;<code>Release<\/code>&nbsp;mode in UWP platform.<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-csharp\">\/\/ In App.xaml.cs \nprotected override void OnLaunched(LaunchActivatedEventArgs e)\n{ \n   \/\/ Other codes\n   if (rootFrame == null) \n   { \n      List&lt;Assembly&gt; assembliesToInclude = new List&lt;Assembly&gt;();\n      \/\/ Add the below line if you are using SfLinearProgressBar.\n   assembliesToInclude.Add(typeof(Syncfusion.XForms.UWP.ProgressBar.SfLinearProgressRenderer).GetTypeInfo().Assembly);\n      \/\/ Add the below line if you are using SfCircularProgressBar. \n     assembliesToInclude.Add(typeof(Syncfusion.XForms.UWP.ProgressBar.SfCircularProgressBarRenderer).GetTypeInfo().Assembly);\n      Xamarin.Forms.Forms.Init(e, assembliesToInclude); \n   } \n\/\/ Other codes\n}<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Step 3 &#8211; SfProgressBar Example<\/h2>\n\n\n\n<p>After installing the plugin and launching it on a specific platform, it&#8217;s time to build an example. In this step, I will first create a simple <a href=\"https:\/\/serkanseker.com\/xamarin-forms-pancakeview-plugin-usage\/\" target=\"_blank\" rel=\"noreferrer noopener\">PancakeView <\/a>in ContentPage. Then I&#8217;ll show you a CircularProgressBar in PanckeView. Finally, I will customize the color and other features of this ProgressBar.<\/p>\n\n\n\n<p>Now you need a ContentPage to show progress bars. Right click on the project folder and add a ContentPage named ProgressBarPage.xaml.<\/p>\n\n\n\n<p>Then you need to add the progressBar namespace to ContentPage. Because this namespace is required to create views with the SfProgressBar plugin. Paste the following code inside the &lt;ContentPage&gt; definition.<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-markup\">xmlns:progressBar=&quot;clr-namespace:Syncfusion.XForms.ProgressBar;assembly=Syncfusion.SfProgressBar.XForms&quot;<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Create Circular ProgressBar<\/h3>\n\n\n\n<p>Now add a PancakeView in &lt;ContentPage.Content&gt; tag and set its properties as follows. You can change the properties according to your request. Don&#8217;t forget to add namespace of <a href=\"https:\/\/serkanseker.com\/xamarin-forms-pancakeview-plugin-usage\/\" target=\"_blank\" rel=\"noreferrer noopener\">PancakeView<\/a>.<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-markup\">&lt;pancakeview:PancakeView \n            Grid.Row=&quot;7&quot; \n            BackgroundColor=&quot;#f9f9f9&quot; \n            HeightRequest=&quot;300&quot; \n            WidthRequest=&quot;300&quot; \n            CornerRadius=&quot;20&quot; \n            HorizontalOptions=&quot;Center&quot; \n            VerticalOptions=&quot;Center&quot; \n            HasShadow=&quot;True&quot; \n            Margin=&quot;0,50,0,0&quot;&gt;\n&lt;\/pancakeview:PancakeView&gt;<\/code><\/pre>\n\n\n\n<p>Next, add SfCircularProgressBar in the &lt;pancakeview:PancakeView&gt; tag and set its properties as follows. Also you can add content in ProgressBar adding SfCircularProgressBar.Content in &lt;progressBar:SfCircularProgressBar&gt; tag.<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-markup\">&lt;progressBar:SfCircularProgressBar\n                Margin=&quot;10&quot;\n                Grid.Row=&quot;0&quot; \n                Grid.Column=&quot;0&quot;\n                Minimum=&quot;0&quot;\n                Maximum=&quot;100&quot;\n                Progress=&quot;80&quot;\n                TrackColor=&quot;#f3f3f3&quot;\n                IndicatorOuterRadius=&quot;0.7&quot; \n                IndicatorInnerRadius=&quot;1 &quot;\n                TrackOuterRadius=&quot;0.7&quot;\n                TrackInnerRadius=&quot;1 &quot;\n                EasingEffect=&quot;CubicInOut&quot;\n                IndeterminateEasingEffect=&quot;SinInOut&quot; &gt;\n                &lt;progressBar:SfCircularProgressBar.Content&gt;\n                    &lt;Grid&gt;\n                        &lt;Label Grid.Row=&quot;0&quot; Text=&quot;HUMIDITY&quot;  HorizontalOptions=&quot;Center&quot; FontSize=&quot;20&quot;\/&gt;\n                        &lt;Label Grid.Row=&quot;1&quot; Text=&quot;80%&quot; FontAttributes=&quot;Bold&quot; TextColor=&quot;Black&quot; FontSize=&quot;35&quot; HorizontalOptions=&quot;Center&quot; VerticalOptions=&quot;Center&quot;\/&gt;\n                    &lt;\/Grid&gt;\n                &lt;\/progressBar:SfCircularProgressBar.Content&gt;\n            &lt;\/progressBar:SfCircularProgressBar&gt;<\/code><\/pre>\n\n\n\n<p>In the ProgressBar content there are two Labels, one of them contains text and the other shows the percentage.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Colors of ProgressBar<\/h3>\n\n\n\n<p>By setting RangeColorCollection, you can change color of ProgressBar. I  defined four segment and I gave colors in darker shades, respectively. So I got a more fluid look.<\/p>\n\n\n\n<p>Set the <strong>IsGradient <\/strong>property as <strong>True<\/strong> to give a gradient and add Hex code of each gradient as follow.<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-markup\">&lt;progressBar:SfCircularProgressBar.RangeColors&gt;\n    &lt;progressBar:RangeColorCollection&gt;\n    &lt;progressBar:RangeColor IsGradient=&quot;True&quot; Color=&quot;#e9e9e5&quot; Start=&quot;0&quot; End=&quot;25&quot;\/&gt;\n    &lt;progressBar:RangeColor IsGradient=&quot;True&quot; Color=&quot;#d4d6c8&quot; Start=&quot;25&quot; End=&quot;50&quot;\/&gt;\n    &lt;progressBar:RangeColor IsGradient=&quot;True&quot; Color=&quot;#9a9b94&quot; Start=&quot;50&quot; End=&quot;75&quot;\/&gt;\n    &lt;progressBar:RangeColor IsGradient=&quot;True&quot; Color=&quot;#52524e&quot; Start=&quot;75&quot; End=&quot;100&quot;\/&gt;\n    &lt;\/progressBar:RangeColorCollection&gt;\n&lt;\/progressBar:SfCircularProgressBar.RangeColors&gt;<\/code><\/pre>\n\n\n\n<p>The full version of the XAML page will look like this.<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-markup\">&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot; ?&gt;\n&lt;ContentPage xmlns=&quot;http:\/\/xamarin.com\/schemas\/2014\/forms&quot;\n             xmlns:x=&quot;http:\/\/schemas.microsoft.com\/winfx\/2009\/xaml&quot;\n             xmlns:d=&quot;http:\/\/xamarin.com\/schemas\/2014\/forms\/design&quot;\n             xmlns:mc=&quot;http:\/\/schemas.openxmlformats.org\/markup-compatibility\/2006&quot; \n             xmlns:pancakeview=&quot;clr-namespace:Xamarin.Forms.PancakeView;assembly=Xamarin.Forms.PancakeView&quot; xmlns:progressBar=&quot;clr-namespace:Syncfusion.XForms.ProgressBar;assembly=Syncfusion.SfProgressBar.XForms&quot;\n             mc:Ignorable=&quot;d&quot;\n             x:Class=&quot;Weather.View.ProgressBarPage&quot;&gt;\n    &lt;ContentPage.Content&gt;\n        &lt;pancakeview:PancakeView \n            Grid.Row=&quot;7&quot; \n            BackgroundColor=&quot;#f9f9f9&quot; \n            HeightRequest=&quot;300&quot; \n            WidthRequest=&quot;300&quot; \n            CornerRadius=&quot;20&quot; \n            HorizontalOptions=&quot;Center&quot; \n            VerticalOptions=&quot;Center&quot; \n            HasShadow=&quot;True&quot; \n            Margin=&quot;0,50,0,0&quot;&gt;\n            &lt;progressBar:SfCircularProgressBar\n                Margin=&quot;10&quot;\n                Grid.Row=&quot;0&quot; \n                Grid.Column=&quot;0&quot;\n                Minimum=&quot;0&quot;\n                Maximum=&quot;100&quot;\n                Progress=&quot;80&quot;\n                TrackColor=&quot;#f3f3f3&quot;\n                IndicatorOuterRadius=&quot;0.7&quot; \n                IndicatorInnerRadius=&quot;1 &quot;\n                TrackOuterRadius=&quot;0.7&quot;\n                TrackInnerRadius=&quot;1 &quot;\n                EasingEffect=&quot;CubicInOut&quot;\n                IndeterminateEasingEffect=&quot;SinInOut&quot; &gt;\n\n                &lt;progressBar:SfCircularProgressBar.Content&gt;\n                    &lt;Grid&gt;\n                        &lt;Label Grid.Row=&quot;0&quot; Text=&quot;HUMIDITY&quot;  HorizontalOptions=&quot;Center&quot; FontSize=&quot;20&quot;\/&gt;\n                        &lt;Label Grid.Row=&quot;1&quot; Text=&quot;80%&quot; FontAttributes=&quot;Bold&quot; TextColor=&quot;Black&quot; FontSize=&quot;35&quot; HorizontalOptions=&quot;Center&quot; VerticalOptions=&quot;Center&quot;\/&gt;\n                    &lt;\/Grid&gt;\n                &lt;\/progressBar:SfCircularProgressBar.Content&gt;\n                &lt;progressBar:SfCircularProgressBar.RangeColors&gt;\n                    &lt;progressBar:RangeColorCollection&gt;\n                        &lt;progressBar:RangeColor IsGradient=&quot;True&quot; Color=&quot;#e9e9e5&quot; Start=&quot;0&quot; End=&quot;25&quot;\/&gt;\n                        &lt;progressBar:RangeColor IsGradient=&quot;True&quot; Color=&quot;#d4d6c8&quot; Start=&quot;25&quot; End=&quot;50&quot;\/&gt;\n                        &lt;progressBar:RangeColor IsGradient=&quot;True&quot; Color=&quot;#9a9b94&quot; Start=&quot;50&quot; End=&quot;75&quot;\/&gt;\n                        &lt;progressBar:RangeColor IsGradient=&quot;True&quot; Color=&quot;#52524e&quot; Start=&quot;75&quot; End=&quot;100&quot;\/&gt;\n                    &lt;\/progressBar:RangeColorCollection&gt;\n                &lt;\/progressBar:SfCircularProgressBar.RangeColors&gt;\n            &lt;\/progressBar:SfCircularProgressBar&gt;\n        &lt;\/pancakeview:PancakeView&gt;\n    &lt;\/ContentPage.Content&gt;\n&lt;\/ContentPage&gt;<\/code><\/pre>\n\n\n\n<p>Finally set ProgressBarPage as MainPage in App.cs.<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-csharp\">public App()\n{\n    InitializeComponent();\n    MainPage = new ProgressBarPage();\n}<\/code><\/pre>\n\n\n\n<p>After adding everything according to your request, run the application and see how it looks.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/serkanseker.com\/wp-content\/uploads\/2020\/08\/Xamarin.Forms-ProgressBar-1.gif\" alt=\"Xamarin.Forms ProgressBar\" class=\"wp-image-506\" width=\"300\" height=\"477\"\/><figcaption>Xamarin.Forms ProgressBar<\/figcaption><\/figure><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusion<\/h2>\n\n\n\n<p>ProgressBars are crucial to the usability of a mobile app. Often times it is necessary to show the progress of a process to the user. Or sometimes the progressive time remaining. These are factors that improve the user experience of a mobile app.<\/p>\n\n\n\n<p>It is possible to do many customizations that you cannot do with Xamarin controls with the SfProgressBar plugin. With SfProgressBar you can create and customize linear or circular progress bars.<\/p>\n\n\n\n<p>In this article, I explained how to use the SfProgressBar plugin in a Xamarin.Forms project. I hope it was useful.<\/p>\n\n\n\n<p>If you are still unsure of what to do, I suggest you use the comment section below and let me know! I\u2019m here to help. Also, feel free to share with others using the super-easy share buttons!<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Related Posts<\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li><a href=\"https:\/\/serkanseker.com\/best-nuget-packages\/\" target=\"_blank\" rel=\"noreferrer noopener\">Best NuGet Packages<\/a><\/li><li><a href=\"https:\/\/serkanseker.com\/syncfusion-community-license-key\/\" target=\"_blank\" rel=\"noreferrer noopener\">How To Register For Syncfusion and Get License<\/a><\/li><li><a href=\"https:\/\/serkanseker.com\/how-to-use-pancakeview-xamarin\/\" target=\"_blank\" rel=\"noreferrer noopener\">How to Use PancakeView in Xamarin<\/a><\/li><li><a rel=\"noreferrer noopener\" href=\"https:\/\/serkanseker.com\/xamarin-forms-listview-grouping\/\" target=\"_blank\">Xamarin.Forms ListView Grouping<\/a><\/li><li><a rel=\"noreferrer noopener\" href=\"https:\/\/serkanseker.com\/xamarin-forms-visualize-your-data-with-sfchart\/\" target=\"_blank\">Visualize Your Data With SfChart in Xamarin.Forms<\/a><\/li><li><a rel=\"noreferrer noopener\" href=\"https:\/\/serkanseker.com\/xamarin-forms-progressbar-example\/\" target=\"_blank\">Xamarin.Forms ProgressBar Example<\/a><\/li><\/ul>\n","protected":false},"excerpt":{"rendered":"<p>We show it sometimes on the screen or in the notification bar to show any progress within the program. For example, when downloading a file, what percentage of the download is in the notification bar. Or we&#8217;ll see the time in a progress bar in music player apps. Thus, we aim to increase the user experience of the mobile application. That&#8217;s why the ProgressBar is so important for a mobile app.<\/p>\n","protected":false},"author":1,"featured_media":218,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_coblocks_attr":"","_coblocks_dimensions":"","_coblocks_responsive_height":"","_coblocks_accordion_ie_support":"","footnotes":""},"categories":[572,21,39],"tags":[14,570,18,27,28,4,5],"class_list":["post-469","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-nuget","category-xamarin","category-xamarin-forms","tag-design","tag-nuget","tag-pancakeview","tag-progressbar","tag-syncfusion","tag-xamarin","tag-xamarin-forms"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.0 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Xamarin.Forms ProgressBar - Serkan Seker TR<\/title>\n<meta name=\"robots\" content=\"noindex, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Xamarin.Forms ProgressBar - Serkan Seker TR\" \/>\n<meta property=\"og:description\" content=\"We show it sometimes on the screen or in the notification bar to show any progress within the program. For example, when downloading a file, what percentage of the download is in the notification bar. Or we&#039;ll see the time in a progress bar in music player apps. Thus, we aim to increase the user experience of the mobile application. That&#039;s why the ProgressBar is so important for a mobile app.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/serkanseker.com\/tr\/xamarin-forms-progressbar\/\" \/>\n<meta property=\"og:site_name\" content=\"Serkan Seker TR\" \/>\n<meta property=\"article:published_time\" content=\"2020-07-28T19:12:38+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-01-16T12:28:47+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/serkanseker.com\/tr\/wp-content\/uploads\/2020\/12\/Xamarin.Forms-ProgressBar-Example.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1\" \/>\n\t<meta property=\"og:image:height\" content=\"1\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"serkanadmin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"serkanadmin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/serkanseker.com\/tr\/xamarin-forms-progressbar\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/serkanseker.com\/tr\/xamarin-forms-progressbar\/\"},\"author\":{\"name\":\"serkanadmin\",\"@id\":\"https:\/\/serkanseker.com\/tr\/#\/schema\/person\/841fcc69b248e08e52c4190963caeaf5\"},\"headline\":\"Xamarin.Forms ProgressBar\",\"datePublished\":\"2020-07-28T19:12:38+00:00\",\"dateModified\":\"2021-01-16T12:28:47+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/serkanseker.com\/tr\/xamarin-forms-progressbar\/\"},\"wordCount\":896,\"commentCount\":3,\"image\":{\"@id\":\"https:\/\/serkanseker.com\/tr\/xamarin-forms-progressbar\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/serkanseker.com\/tr\/wp-content\/uploads\/2020\/12\/Xamarin.Forms-ProgressBar-Example.jpg\",\"keywords\":[\"design\",\"NuGet\",\"pancakeview\",\"ProgressBar\",\"syncfusion\",\"xamarin\",\"xamarin.forms\"],\"articleSection\":[\"NuGet\",\"Xamarin\",\"Xamarin.Forms\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/serkanseker.com\/tr\/xamarin-forms-progressbar\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/serkanseker.com\/tr\/xamarin-forms-progressbar\/\",\"url\":\"https:\/\/serkanseker.com\/tr\/xamarin-forms-progressbar\/\",\"name\":\"Xamarin.Forms ProgressBar - Serkan Seker TR\",\"isPartOf\":{\"@id\":\"https:\/\/serkanseker.com\/tr\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/serkanseker.com\/tr\/xamarin-forms-progressbar\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/serkanseker.com\/tr\/xamarin-forms-progressbar\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/serkanseker.com\/tr\/wp-content\/uploads\/2020\/12\/Xamarin.Forms-ProgressBar-Example.jpg\",\"datePublished\":\"2020-07-28T19:12:38+00:00\",\"dateModified\":\"2021-01-16T12:28:47+00:00\",\"author\":{\"@id\":\"https:\/\/serkanseker.com\/tr\/#\/schema\/person\/841fcc69b248e08e52c4190963caeaf5\"},\"breadcrumb\":{\"@id\":\"https:\/\/serkanseker.com\/tr\/xamarin-forms-progressbar\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/serkanseker.com\/tr\/xamarin-forms-progressbar\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/serkanseker.com\/tr\/xamarin-forms-progressbar\/#primaryimage\",\"url\":\"https:\/\/serkanseker.com\/tr\/wp-content\/uploads\/2020\/12\/Xamarin.Forms-ProgressBar-Example.jpg\",\"contentUrl\":\"https:\/\/serkanseker.com\/tr\/wp-content\/uploads\/2020\/12\/Xamarin.Forms-ProgressBar-Example.jpg\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/serkanseker.com\/tr\/xamarin-forms-progressbar\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/serkanseker.com\/tr\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Xamarin.Forms ProgressBar\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/serkanseker.com\/tr\/#website\",\"url\":\"https:\/\/serkanseker.com\/tr\/\",\"name\":\"Serkan Seker TR\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/serkanseker.com\/tr\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/serkanseker.com\/tr\/#\/schema\/person\/841fcc69b248e08e52c4190963caeaf5\",\"name\":\"serkanadmin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/serkanseker.com\/tr\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/93ddc1f96117bf468976afe93a077eda77de96bcdb48dc749903598a546786a3?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/93ddc1f96117bf468976afe93a077eda77de96bcdb48dc749903598a546786a3?s=96&d=mm&r=g\",\"caption\":\"serkanadmin\"},\"sameAs\":[\"https:\/\/serkanseker.com\"],\"url\":\"https:\/\/serkanseker.com\/tr\/author\/serkanadmin\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Xamarin.Forms ProgressBar - Serkan Seker TR","robots":{"index":"noindex","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"og_locale":"en_US","og_type":"article","og_title":"Xamarin.Forms ProgressBar - Serkan Seker TR","og_description":"We show it sometimes on the screen or in the notification bar to show any progress within the program. For example, when downloading a file, what percentage of the download is in the notification bar. Or we'll see the time in a progress bar in music player apps. Thus, we aim to increase the user experience of the mobile application. That's why the ProgressBar is so important for a mobile app.","og_url":"https:\/\/serkanseker.com\/tr\/xamarin-forms-progressbar\/","og_site_name":"Serkan Seker TR","article_published_time":"2020-07-28T19:12:38+00:00","article_modified_time":"2021-01-16T12:28:47+00:00","og_image":[{"url":"https:\/\/serkanseker.com\/tr\/wp-content\/uploads\/2020\/12\/Xamarin.Forms-ProgressBar-Example.jpg","width":1,"height":1,"type":"image\/jpeg"}],"author":"serkanadmin","twitter_card":"summary_large_image","twitter_misc":{"Written by":"serkanadmin","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/serkanseker.com\/tr\/xamarin-forms-progressbar\/#article","isPartOf":{"@id":"https:\/\/serkanseker.com\/tr\/xamarin-forms-progressbar\/"},"author":{"name":"serkanadmin","@id":"https:\/\/serkanseker.com\/tr\/#\/schema\/person\/841fcc69b248e08e52c4190963caeaf5"},"headline":"Xamarin.Forms ProgressBar","datePublished":"2020-07-28T19:12:38+00:00","dateModified":"2021-01-16T12:28:47+00:00","mainEntityOfPage":{"@id":"https:\/\/serkanseker.com\/tr\/xamarin-forms-progressbar\/"},"wordCount":896,"commentCount":3,"image":{"@id":"https:\/\/serkanseker.com\/tr\/xamarin-forms-progressbar\/#primaryimage"},"thumbnailUrl":"https:\/\/serkanseker.com\/tr\/wp-content\/uploads\/2020\/12\/Xamarin.Forms-ProgressBar-Example.jpg","keywords":["design","NuGet","pancakeview","ProgressBar","syncfusion","xamarin","xamarin.forms"],"articleSection":["NuGet","Xamarin","Xamarin.Forms"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/serkanseker.com\/tr\/xamarin-forms-progressbar\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/serkanseker.com\/tr\/xamarin-forms-progressbar\/","url":"https:\/\/serkanseker.com\/tr\/xamarin-forms-progressbar\/","name":"Xamarin.Forms ProgressBar - Serkan Seker TR","isPartOf":{"@id":"https:\/\/serkanseker.com\/tr\/#website"},"primaryImageOfPage":{"@id":"https:\/\/serkanseker.com\/tr\/xamarin-forms-progressbar\/#primaryimage"},"image":{"@id":"https:\/\/serkanseker.com\/tr\/xamarin-forms-progressbar\/#primaryimage"},"thumbnailUrl":"https:\/\/serkanseker.com\/tr\/wp-content\/uploads\/2020\/12\/Xamarin.Forms-ProgressBar-Example.jpg","datePublished":"2020-07-28T19:12:38+00:00","dateModified":"2021-01-16T12:28:47+00:00","author":{"@id":"https:\/\/serkanseker.com\/tr\/#\/schema\/person\/841fcc69b248e08e52c4190963caeaf5"},"breadcrumb":{"@id":"https:\/\/serkanseker.com\/tr\/xamarin-forms-progressbar\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/serkanseker.com\/tr\/xamarin-forms-progressbar\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/serkanseker.com\/tr\/xamarin-forms-progressbar\/#primaryimage","url":"https:\/\/serkanseker.com\/tr\/wp-content\/uploads\/2020\/12\/Xamarin.Forms-ProgressBar-Example.jpg","contentUrl":"https:\/\/serkanseker.com\/tr\/wp-content\/uploads\/2020\/12\/Xamarin.Forms-ProgressBar-Example.jpg"},{"@type":"BreadcrumbList","@id":"https:\/\/serkanseker.com\/tr\/xamarin-forms-progressbar\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/serkanseker.com\/tr\/"},{"@type":"ListItem","position":2,"name":"Xamarin.Forms ProgressBar"}]},{"@type":"WebSite","@id":"https:\/\/serkanseker.com\/tr\/#website","url":"https:\/\/serkanseker.com\/tr\/","name":"Serkan Seker TR","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/serkanseker.com\/tr\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/serkanseker.com\/tr\/#\/schema\/person\/841fcc69b248e08e52c4190963caeaf5","name":"serkanadmin","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/serkanseker.com\/tr\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/93ddc1f96117bf468976afe93a077eda77de96bcdb48dc749903598a546786a3?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/93ddc1f96117bf468976afe93a077eda77de96bcdb48dc749903598a546786a3?s=96&d=mm&r=g","caption":"serkanadmin"},"sameAs":["https:\/\/serkanseker.com"],"url":"https:\/\/serkanseker.com\/tr\/author\/serkanadmin\/"}]}},"_links":{"self":[{"href":"https:\/\/serkanseker.com\/tr\/wp-json\/wp\/v2\/posts\/469","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/serkanseker.com\/tr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/serkanseker.com\/tr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/serkanseker.com\/tr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/serkanseker.com\/tr\/wp-json\/wp\/v2\/comments?post=469"}],"version-history":[{"count":0,"href":"https:\/\/serkanseker.com\/tr\/wp-json\/wp\/v2\/posts\/469\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/serkanseker.com\/tr\/wp-json\/wp\/v2\/media\/218"}],"wp:attachment":[{"href":"https:\/\/serkanseker.com\/tr\/wp-json\/wp\/v2\/media?parent=469"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/serkanseker.com\/tr\/wp-json\/wp\/v2\/categories?post=469"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/serkanseker.com\/tr\/wp-json\/wp\/v2\/tags?post=469"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}