ProgressDialog with transparent background XamarinAndroid
Code Snippet :
progress_dialog.xaml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:background="@android:color/transparent"
android:gravity="center"
android:layout_height="match_parent"
android:layout_width="match_parent"
android:orientation="horizontal">
<ProgressBar
android:background="@android:color/transparent"
android:id="@+id/progressBar1"
android:layout_gravity="center"
android:layout_height="wrap_content"
android:layout_marginRight="10dp"
android:layout_width="wrap_content" />
<LoadChart.Droid.CustomTextView
android:id="@+id/progressMessage"
android:layout_gravity="center"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:textColor="@android:color/white"
android:textSize="12sp"
app:font="@string/font_name_light" />
</LinearLayout>
MainActivity.cs
private void ShowDialog()
{
mProgressDialog = new Dialog(this, Android.Resource.Style.ThemeNoTitleBar);
View view = LayoutInflater.From(this).Inflate(Resource.Layout.progress_dialog, null);
mProgressMessage = (TextView) view.FindViewById(Resource.Id.progressMessage);
mProgressMessage.Text = "Loading...";
mProgressDialog.Window.SetBackgroundDrawableResource(Resource.Color.transparent);
mProgressDialog.SetContentView(view);
mProgressDialog.SetCancelable(false);
if (!IsFinishing)
{
mProgressDialog.Show();
}
}
To show dialog in onCreate call:
ShowDialog();
To dismiss the dialog:
if (mProgressDialog != null && mProgressDialog.IsShowing)
{
mProgressDialog.Dismiss();
}
progress_dialog.xaml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:background="@android:color/transparent"
android:gravity="center"
android:layout_height="match_parent"
android:layout_width="match_parent"
android:orientation="horizontal">
<ProgressBar
android:background="@android:color/transparent"
android:id="@+id/progressBar1"
android:layout_gravity="center"
android:layout_height="wrap_content"
android:layout_marginRight="10dp"
android:layout_width="wrap_content" />
<LoadChart.Droid.CustomTextView
android:id="@+id/progressMessage"
android:layout_gravity="center"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:textColor="@android:color/white"
android:textSize="12sp"
app:font="@string/font_name_light" />
</LinearLayout>
MainActivity.cs
private void ShowDialog()
{
mProgressDialog = new Dialog(this, Android.Resource.Style.ThemeNoTitleBar);
View view = LayoutInflater.From(this).Inflate(Resource.Layout.progress_dialog, null);
mProgressMessage = (TextView) view.FindViewById(Resource.Id.progressMessage);
mProgressMessage.Text = "Loading...";
mProgressDialog.Window.SetBackgroundDrawableResource(Resource.Color.transparent);
mProgressDialog.SetContentView(view);
mProgressDialog.SetCancelable(false);
if (!IsFinishing)
{
mProgressDialog.Show();
}
}
To show dialog in onCreate call:
ShowDialog();
To dismiss the dialog:
if (mProgressDialog != null && mProgressDialog.IsShowing)
{
mProgressDialog.Dismiss();
}

Comments
Post a Comment