{"id":13790163,"url":"https://github.com/mecoFarid/squeezeloader","last_synced_at":"2025-05-12T07:31:29.632Z","repository":{"id":135468930,"uuid":"198758804","full_name":"mecoFarid/SqueezeLoader","owner":"mecoFarid","description":"Loader library (ProgressBar) for Android","archived":false,"fork":false,"pushed_at":"2023-02-27T16:42:15.000Z","size":1394,"stargazers_count":27,"open_issues_count":2,"forks_count":3,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-11-18T04:35:45.343Z","etag":null,"topics":["android-loader","android-loaders","android-progressbar","custom-progressbar","loader","loaders","progress-bar","progressbar"],"latest_commit_sha":null,"homepage":"","language":"Kotlin","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mecoFarid.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-07-25T04:43:43.000Z","updated_at":"2024-06-01T17:11:06.000Z","dependencies_parsed_at":null,"dependency_job_id":"6e9d26fe-1021-4b8f-88e5-7ee879ae7da5","html_url":"https://github.com/mecoFarid/SqueezeLoader","commit_stats":null,"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mecoFarid%2FSqueezeLoader","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mecoFarid%2FSqueezeLoader/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mecoFarid%2FSqueezeLoader/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mecoFarid%2FSqueezeLoader/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mecoFarid","download_url":"https://codeload.github.com/mecoFarid/SqueezeLoader/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253695149,"owners_count":21948821,"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-loader","android-loaders","android-progressbar","custom-progressbar","loader","loaders","progress-bar","progressbar"],"created_at":"2024-08-03T22:00:37.912Z","updated_at":"2025-05-12T07:31:29.618Z","avatar_url":"https://github.com/mecoFarid.png","language":"Kotlin","funding_links":[],"categories":["Index"],"sub_categories":[],"readme":"## Description\nSqueezeLoader is a custom Loader (ProgressBar) \n\n![alt Library Logo](https://raw.githubusercontent.com/mecoFarid/SqueezeLoader/master/extra_media/library_logo.jpg)\n\n## Demo\n![alt SqueezeLoader demo gif](https://raw.githubusercontent.com/mecoFarid/SqueezeLoader/master/extra_media/squeeze_loader.gif)\n\n## Usage\n### 1. Integration\nMin API level is: `API 14` [![](https://jitpack.io/v/mecoFarid/squeezeloader.svg)](https://jitpack.io/#mecoFarid/squeezeloader)\n\n**Step 1.** Add it in your root build.gradle at the end of repositories:\n\n```\nallprojects {\n    repositories {\n        ...\n        maven { url 'https://jitpack.io' }\n    }\n}\n```\n**Step 2.** Add the dependency\n```\ndependencies {\n    ...  \n    implementation 'com.github.mecoFarid:squeezeloader:1.0.3'\n}\n```\n### 2.Troubleshooting\nIf you get an error similar to:\n```\nError: Default interface methods are only supported starting with Android N (--min-api 24): android.view.MenuItem androidx.core.internal.view.SupportMenuItem.setContentDescription(java.lang.CharSequence)\n```\nthen add this snippet to `android` section in `build.gradle (app Module)` file:\n\n```\ncompileOptions {\n        sourceCompatibility JavaVersion.VERSION_1_8\n        targetCompatibility JavaVersion.VERSION_1_8\n    }\n```\n### 3. Code example\nAfter integrating the library to your app you can use the `SqueezeLoader` in your xml as below:\n\n`SqueezeLoader` is the Layout that fast-moving/squeezing `SqueezeBar` animates through. Look at the gif above fro reference, the fast moving bar is called `SqueezeBar`\n```\n\u003ccom.mecofarid.squeezeloader.SqueezeLoader\n            android:layout_width=\"wrap_content\"\n            android:layout_height=\"match_parent\"\n            app:sl_squeezebarWidth=\"50dp\"\n            app:sl_animationDuration=\"1000\"\n            app:sl_colorSqueezebar=\"@color/colorPrimary\"/\u003e\n```\n### 4. Attribute explanation and values\n**Minumum/Maximum values for:** \n\n| Atribute name              | Default          | Minimum         |             Maximum | \n|     :---                   |      :---        | :---            |     :---            |\n| app:sl_animationDuration   | 1100ms           | 1100ms          | No restriction      |\n| android:layout_width       | parent's width   | 200dp           | parent's width      |\n| app:sl_squeezebarWidth     | 50dp             | 2dp             | 100dp               |\n| android:layout_height      | 2dp              | No restriction  | parent's width      |\n\n\n\n## Notes:\nIf you place SqueezeLoader in a parent view with `android:layout_width` less than `200dp` it will inherite parent's `width` in this case `SqueezeLoader` can be less than `200dp`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FmecoFarid%2Fsqueezeloader","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FmecoFarid%2Fsqueezeloader","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FmecoFarid%2Fsqueezeloader/lists"}