{"id":15654566,"url":"https://github.com/wcoder/xamarin.blurview","last_synced_at":"2025-03-09T17:30:45.032Z","repository":{"id":55676825,"uuid":"115285763","full_name":"wcoder/Xamarin.BlurView","owner":"wcoder","description":"Dynamic iOS-like blur of underlying Views for Android.","archived":false,"fork":false,"pushed_at":"2022-11-23T16:54:30.000Z","size":3136,"stargazers_count":27,"open_issues_count":1,"forks_count":2,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-03-06T05:12:04.683Z","etag":null,"topics":["android","android-library","blur","blurview","csharp","porting-to-xamarin","view","xamarin-android","xamarin-android-binding"],"latest_commit_sha":null,"homepage":"https://github.com/Dimezis/BlurView","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/wcoder.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-12-24T20:31:39.000Z","updated_at":"2024-09-24T11:25:39.000Z","dependencies_parsed_at":"2023-01-22T18:00:12.413Z","dependency_job_id":null,"html_url":"https://github.com/wcoder/Xamarin.BlurView","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wcoder%2FXamarin.BlurView","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wcoder%2FXamarin.BlurView/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wcoder%2FXamarin.BlurView/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wcoder%2FXamarin.BlurView/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wcoder","download_url":"https://codeload.github.com/wcoder/Xamarin.BlurView/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":242728411,"owners_count":20175935,"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","blur","blurview","csharp","porting-to-xamarin","view","xamarin-android","xamarin-android-binding"],"created_at":"2024-10-03T12:52:30.002Z","updated_at":"2025-03-09T17:30:44.703Z","avatar_url":"https://github.com/wcoder.png","language":"C#","readme":"# Xamarin.BlurView\n\n![version](https://img.shields.io/badge/original-v2.0.2-orange.svg?style=flat)\n[![NuGet Badge](https://buildstats.info/nuget/Xamarin.BlurView)](https://www.nuget.org/packages/Xamarin.BlurView/)\n![Build status](https://yauhenipakala.visualstudio.com/_apis/public/build/definitions/b0170656-dd62-445e-bbb7-d6a336f4a889/1/badge)\n\nPort of [Dimezis/BlurView](https://github.com/Dimezis/BlurView) for Xamarin.Android\n\n---\n\n![Android BlurView Cover](https://github.com/Dimezis/BlurView/blob/master/BlurScreenshot.png)\n\nDynamic iOS-like blur of underlying Views for Android. \nIncludes library and small example project.\n\nBlurView can be used as a regular FrameLayout. It blurs its underlying content and draws it as a background for its children.\nBlurView redraws its blurred content when changes in view hierarchy are detected (draw() called). \nIt honors its position and size changes, including view animation and property animation.\n\n## [Demo App at Google Play](https://play.google.com/store/apps/details?id=com.eightbitlab.blurview_sample)\n\n## How to use\n\n```xml\n\u003ceightbitlab.com.blurview.BlurView\n  android:id=\"@+id/blurView\"\n  android:layout_width=\"match_parent\"\n  android:layout_height=\"wrap_content\"\n  app:blurOverlayColor=\"@color/colorOverlay\"\u003e\n\n   \u003c!--Any child View here, TabLayout for example--\u003e\n\n\u003c/eightbitlab.com.blurview.BlurView\u003e\n```\n\n```csharp\nfloat radius = 20;\n\nView decorView = Window.DecorView;\n//Activity's root View. Can also be root View of your layout (preferably)\nViewGroup rootView = decorView.FindViewById\u003cViewGroup\u003e(Android.Resource.Id.content);\n//set background, if your root layout doesn't have one\nDrawable windowBackground = decorView.Background;\n\nblurView.SetupWith(rootView)\n       .SetFrameClearDrawable(windowBackground)\n       .SetBlurAlgorithm(new RenderScriptBlur(this))\n       .SetBlurRadius(radius)\n       .SetHasFixedTransformationMatrix(true);\n```\n\nAlways try to choose the closest possible root layout to BlurView. This will greatly reduce the amount of work needed for creating View hierarchy snapshot.\n\nYou can use `SetHasFixedTransformationMatrix` in case if you are not animating your BlurView, this might slightly improve the performance as BlurView won't have to recalculate its transformation matrix on each frame.\n\n## Supporting API \u003c 17\n\n```\n// TODO\n```\n\n## Support Xamarin.Forms\n\nThis library does not provide support for Xamarin.Forms out of the box, but you can do it via custom controls or effects.\n\nAlso, **highly recommended** to use [Sharpnado.MaterialFrame](https://github.com/roubachof/Sharpnado.MaterialFrame) to make views blurring.\n\n## Nuget\n\n```\n\u003e Install-Package Xamarin.BlurView\n```\n\n## Xamarin.Forms\n\nYou may use this library for Xamarin.Forms application, for this you need to create custom control with custom renderer. Example of implementation you can see here: https://github.com/wcoder/Xamarin.BlurView/commit/50c71e4bcc58cc07deb108c18dd6a40ccd077832\n\n## Important\nBlurView can be used only in a hardware-accelerated window.\nOtherwise, blur will not be drawn. It will fallback to a regular FrameLayout drawing process.\n\n## Performance\nIt takes 1-4ms on Nexus 5 and Nexus 4 to draw BlurView with the setup given in example project.\n\nLicense\n-------\n\n    Copyright 2016 Dmitry Saviuk (Android library), 2017 Yauheni Pakala (Xamarin library)\n\n    Licensed under the Apache License, Version 2.0 (the \"License\");\n    you may not use this file except in compliance with the License.\n    You may obtain a copy of the License at\n\n       http://www.apache.org/licenses/LICENSE-2.0\n\n    Unless required by applicable law or agreed to in writing, software\n    distributed under the License is distributed on an \"AS IS\" BASIS,\n    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n    See the License for the specific language governing permissions and\n    limitations under the License.\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwcoder%2Fxamarin.blurview","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwcoder%2Fxamarin.blurview","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwcoder%2Fxamarin.blurview/lists"}