You can do it like this:
private void BtnConsumer_Click(object sender, EventArgs e)
{
CustomProgressDialog progressDialog = CustomProgressDialog.Show(this);
try
{
String cpfConsumer = edtCpf.Text;
Pessoa pessoa = this.GetConsumer(cpfConsumer);
List<String> lista = this.GetServiceOrders(cpfConsumer);
txtnome.Text = "Nome: " + pessoa.firstName + " " + pessoa.lastName;
ArrayAdapter<string> adapter = new ArrayAdapter<string>(this, Android.Resource.Layout.SimpleListItem1, lista);
mlistview.Adapter = adapter;
catch (Exception ex)
{
Toast.MakeText(this, "EXCEPTION: " + ex.Message, ToastLength.Long).Show();
}
progressDialog.Dismiss();
}
private Pessoa GetConsumer(String cpfConsumer)
{
// API Consumer CPF
RestClient client = new RestClient("https://qa.api-latam.whirlpool.com/v1.0/consumers");
RestRequest requestConsumer = new RestRequest("/" + cpfConsumer, Method.GET);
requestConsumer.AddHeader("Content-Type", "application/json; charset=utf-8");
requestConsumer.AddHeader("Authorization", "Bearer fed6b2f0-7aba-3339-9813-7fc9387e2581");
IRestResponse responseConsumer = consumer.Execute(cpfConsumer);
Pessoa pessoa = JsonConvert.DeserializeObject<Pessoa>(responseConsumer.Content);
return pessoa;
}
private List<String> GetServiceOrders(String cpfConsumer)
{
// API Consumer service-orders
RestClient client = new RestClient("https://qa.api-latam.whirlpool.com/v1.0/consumers/");
RestRequest ordersRequest = new RestRequest("/" + cpfConsumer + "/service-orders", Method.GET);
ordersRequest.AddHeader("Content-Type", "application/json; charset=utf-8");
ordersRequest.AddHeader("Authorization", "Bearer fed6b2f0-7aba-3339-9813-7fc9387e2581");
IRestResponse ordersResponse = client.Execute(requestorderId);
RootObject ordersObject = JsonConvert.DeserializeObject<RootObject>(ordersResponse.Content);
List<String> lista = new List<String>();
for (int i = 0; i < ordersObject.orders.Count; i++)
{
String s = ordersObject.orders[i].order.orderId + " " + "StatusCode" + " - " + ordersObject.orders[i].order.orderStatusCode + " " + "Status Description: " + " - " + ordersObject.orders[i].order.orderStatusDescription;
lista.Add(s);
}
}
Then you need to create the CustomProgressDialog.cs with the code:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Android.App;
using Android.Content;
using Android.OS;
using Android.Runtime;
using Android.Views;
using Android.Widget;
namespace App4.Dialogs
{
public class CustomProgressDialog
{
private CustomProgressDialog() { }
public static Dialog Show(Context context)
{
Dialog dialog = new Dialog(context, Android.Resource.Style.ThemeTranslucentNoTitleBar);
dialog.SetContentView(Resource.Layout.custom_progress_dialog);
dialog.Window.SetGravity(GravityFlags.Center);
dialog.SetCancelable(true);
dialog.CancelEvent += delegate { dialog.Dismiss(); };
dialog.Show();
return dialog;
}
}
}
In the Resources/Layout folder, create the custom_progress_dialog.xml:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/progres"
android:layout_width="100dp"
android:layout_height="100dp"
android:layout_gravity="center"
android:layout_centerVertical="true"
android:layout_centerHorizontal="true"
android:background="#000000" >
<ProgressBar
android:indeterminate="true"
style="?android:attr/progressBarStyleLarge"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="20dp"
android:layout_centerInParent="true"
android:indeterminateDrawable="@drawable/custom_progress_bar" />
</RelativeLayout>
In the Resources/Drawable folder, create the custom_progress_bar.xml:
<?xml version="1.0" encoding="utf-8"?>
<rotate xmlns:android="http://schemas.android.com/apk/res/android"
android:pivotX="50%"
android:pivotY="50%"
android:fromDegrees="0"
android:toDegrees="360">
<shape android:shape="ring" android:innerRadiusRatio="3"
android:thicknessRatio="8" android:useLevel="false">
<size
android:width="76dip"
android:height="76dip" />
<gradient
android:type="sweep"
android:useLevel="false"
android:startColor="@android:color/transparent"
android:endColor="#00FF00"
android:angle="0" />
</shape>
</rotate>