{"id":21731282,"url":"https://github.com/marwa-eltayeb/progressdialog","last_synced_at":"2025-07-13T23:34:50.276Z","repository":{"id":57734109,"uuid":"465338629","full_name":"marwa-eltayeb/ProgressDialog","owner":"marwa-eltayeb","description":"Android Library to create various kinds of Custom Progress Dialog ","archived":false,"fork":false,"pushed_at":"2022-05-08T02:22:23.000Z","size":1226,"stargazers_count":7,"open_issues_count":0,"forks_count":6,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-13T00:27:13.440Z","etag":null,"topics":["android","android-library","android-ui","hactoberfest","java","kotlin","loading-animations","loadingdialog","progressdialog"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/marwa-eltayeb.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-03-02T14:25:44.000Z","updated_at":"2024-07-05T13:09:09.000Z","dependencies_parsed_at":"2022-09-26T22:10:56.277Z","dependency_job_id":null,"html_url":"https://github.com/marwa-eltayeb/ProgressDialog","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/marwa-eltayeb/ProgressDialog","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marwa-eltayeb%2FProgressDialog","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marwa-eltayeb%2FProgressDialog/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marwa-eltayeb%2FProgressDialog/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marwa-eltayeb%2FProgressDialog/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/marwa-eltayeb","download_url":"https://codeload.github.com/marwa-eltayeb/ProgressDialog/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marwa-eltayeb%2FProgressDialog/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265222463,"owners_count":23730219,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["android","android-library","android-ui","hactoberfest","java","kotlin","loading-animations","loadingdialog","progressdialog"],"created_at":"2024-11-26T04:23:50.617Z","updated_at":"2025-07-13T23:34:50.226Z","avatar_url":"https://github.com/marwa-eltayeb.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ProgressDialog\n\n![Build](https://github.com/Marwa-Eltayeb/ProgressDialog/actions/workflows/build.yml/badge.svg)\n[![Codacy Badge](https://app.codacy.com/project/badge/Grade/5c303c206cc94911a42b855e8ee6f419)](https://www.codacy.com/gh/Marwa-Eltayeb/ProgressDialog/dashboard?utm_source=github.com\u0026amp;utm_medium=referral\u0026amp;utm_content=Marwa-Eltayeb/ProgressDialog\u0026amp;utm_campaign=Badge_Grade)\n[![CodeFactor](https://www.codefactor.io/repository/github/marwa-eltayeb/progressdialog/badge)](https://www.codefactor.io/repository/github/marwa-eltayeb/progressdialog)\n[![Min API Level](https://img.shields.io/badge/API-%2B17-brightgreen)]()\n![Maven Central](https://img.shields.io/maven-central/v/io.github.marwa-eltayeb/progressdialog)\n\nAndroid Library to create various kinds of Custom Progress Dialog \n\n\u003cimg src=\"media/default_dialog.gif\" alt=\"animated\" width=\"24%\"/\u003e \u003cimg src=\"media/colorful_dialog.gif\" alt=\"animated\" width=\"24%\"/\u003e\n\u003cimg src=\"media/changing_quarter_dialog.gif\" alt=\"animated\" width=\"24%\"/\u003e \u003cimg src=\"media/sunset_dialog.gif\" alt=\"animated\" width=\"24%\"/\u003e\n\n\u003cimg src=\"media/charging_dialog.gif\" alt=\"animated\" width=\"24%\"/\u003e \u003cimg src=\"media/rotating_image_dialog.gif\" alt=\"animated\" width=\"24%\"/\u003e\n\u003cimg src=\"media/gradient_dialog.gif\" alt=\"animated\" width=\"24%\"/\u003e \u003cimg src=\"media/scanning_dialog.gif\" alt=\"animated\" width=\"24%\"/\u003e\n\n### Why using ProgressDialog is an asset?\n\n- You have various kinds of dialogs.\n- You create your own dialog and use them.\n- You can change your ProgressDialog width and height.\n- You can customize ProgressDialog title (change text color, size, font and visibility).\n- You can customize Feedback message (change color, size, font and visibility).\n- You can customize your ProgressBar (change color, size, font and visibility).\n- You can add many shapes as a ProgressBar.\n- You can use your favorite image as a ProgressBar.\n- And much more...\n\n### Add ProgressDialog to your project\n\nFrom Maven Central\n```gradle\nimplementation 'io.github.marwa-eltayeb:progressdialog:1.0.0'\n```\n\n### Code Example\n\n```java\n\nTextView customTitle = new TextView(this);\ncustomTitle.setText(getResources().getString(R.string.please_wait));\ncustomTitle.setPadding(20, 30, 20, 30);\ncustomTitle.setTextSize(20F);\ncustomTitle.setBackgroundColor(getResources().getColor(R.color.pink));\ncustomTitle.setTextColor(Color.WHITE);\n\nProgressDialog progressDialog = new ProgressDialog(this)\n    .setDialogPadding(50)\n    .setCustomTitle(customTitle)\n    .setTextSize(18)\n    .setProgressBarColor(getResources().getColor(R.color.pink))\n    .setText(\"Loading...\");\n\nprogressDialog.show();\n```\n\n### Documentation\n\nProgressDialog Library is designed with a fluent interface concept which makes it easily customized.\n\nSet ProgressDialog title.\n```java\nsetTitle(String title);\n```\n\nSet ProgressDialog custom title.\n```java\nsetCustomTitle(View customTitle)\n```\n\nSet ProgressDialog message.\n```java\nsetMessage(String message)\n```\n\nSet ProgressDialog icon.\n```java\nsetIcon(int resID)\n```\n\nSet ProgressDialog background color.\n```java\nsetDialogBackground(int color)\n```\n\nSet ProgressDialog background drawable.\n```java\nsetDialogBackgroundDrawable(Drawable drawable)\n```\n\nSet whether ProgressDialog is cancelable.\n```java\nsetCancelable(boolean cancelable)\n```\n\nSet ProgressDialog dim amount.\n```java\nsetDialogDimAmount(float amount)\n```\n\nSet ProgressDialog to transparent.\n```java\nsetDialogTransparent()\n```\n\nSet ProgressDialog padding.\n```java\nsetDialogPadding(int padding)\n```\n\nSet ProgressDialog gravity.\n```java\nsetDialogGravity(int position)\n```\n\nSet ProgressDialog height.\n```java\nsetDialogHeight(int height)\n```\n\nSet ProgressDialog width.\n```java\nsetDialogWidth(int width)\n```\n\nShow ProgressDialog.\n```java\nshow()\n```\n\nHide ProgressDialog.\n```java\ndismiss()\n```\n\nDismiss ProgressDialog.\n```java\ndismiss()\n```\n\nCancel ProgressDialog.\n```java\ncancel()\n```\n\nSet a listener when ProgressDialog is shown.\n```java\nsetOnShowListener(DialogInterface.OnShowListener listener)\n```\n\nSet a listener when ProgressDialog is canceled.\n```java\nsetOnCancelListener(DialogInterface.OnCancelListener listener)\n```\n\nSet a listener when ProgressDialog is dismissed.\n```java\nsetOnDismissListener(DialogInterface.OnDismissListener listener)\n```\n\nSet ProgressBar color\n```java\nsetProgressBarColor(int color)\n```\n\nSet ProgressBar background color \n```java\nsetProgressBarBackGround(int color)\n```\n\nSet ProgressBar background color \n```java\nsetProgressBarBackGround(Drawable drawable)\n```\nDefine the drawable used to draw the ProgressBar\n```java\nsetProgressDrawable(Drawable drawable)\n```\n\nSet ProgressBar visibility\n```java\nsetProgressBarVisibility(int visibility)\n```\n\nSet the current progress to the specified value.\n```java\nsetProgress(int progress)\n```\n\nSet the upper range of the ProgressBar max.\n```java\nsetProgressMax(int max)\n```\n\nDefine the drawable used to draw the ProgressBar in indeterminate mode.\n```java\nsetProgressBarShape(Drawable drawable)\n```\n\nSet ProgressBar padding\n```java\nsetProgressBarPadding(int padding)\n```\n\nSet the Percentage of Progressbar\n```java\nsetProgressbarPercent(String text)\n```\n\nSet the text of the FeedBack text\n```java\nsetText(String text)\n```\n\nSet the size of the FeedBack text\n```java\nsetTextSize(float size)\n```\n\nSet the visibility of FeedBack Text\n```java\nsetTextVisibility(int visibility)\n```\n\nSet the color of the FeedBack text\n```java\nsetTextColor(int color)\n```\n\nSet the color of the FeedBack text background\n```java\nsetTextBackground(int color)\n```\n\nSet the padding of the FeedBack text\n```java\nsetTextPadding(int left, int top, int right, int bottom)\n```\n\nSet the padding of the FeedBack text\n```java\nsetTextPadding(int padding)\n```\n\nSet the bottom padding of the FeedBack text\n```java\nsetTextPaddingBottom(int bottom)\n```\n\nSet the custom shape of the FeedBack text\n```java\nsetTextShape(int shape)\n```\n\nSet the font of the FeedBack text\n```java\nsetTextFont(Typeface font)\n```\n\n### License\n\n```\nMIT License\n\nCopyright (c) 2022 Marwa Eltayeb\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n```\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarwa-eltayeb%2Fprogressdialog","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmarwa-eltayeb%2Fprogressdialog","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarwa-eltayeb%2Fprogressdialog/lists"}