{"id":21940159,"url":"https://github.com/softeq/subsamplingscaleimageview-xamarin-android","last_synced_at":"2026-05-09T13:01:59.499Z","repository":{"id":96441379,"uuid":"225616533","full_name":"Softeq/SubsamplingScaleImageView-xamarin-android","owner":"Softeq","description":"Binding of SubsamplingScaleImageView Android library for Xamarin / .NET6 / MAUI","archived":false,"fork":false,"pushed_at":"2022-11-27T23:13:01.000Z","size":2605,"stargazers_count":2,"open_issues_count":1,"forks_count":0,"subscribers_count":9,"default_branch":"master","last_synced_at":"2025-01-27T14:53:46.272Z","etag":null,"topics":["android","csharp","dotnet6","image","image-zooming","library","maui","xamarin","xamarin-android","xamarin-android-binding"],"latest_commit_sha":null,"homepage":"https://github.com/davemorrissey/subsampling-scale-image-view","language":null,"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/Softeq.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-12-03T12:39:01.000Z","updated_at":"2022-11-27T20:32:23.000Z","dependencies_parsed_at":"2023-03-10T05:45:12.872Z","dependency_job_id":null,"html_url":"https://github.com/Softeq/SubsamplingScaleImageView-xamarin-android","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Softeq%2FSubsamplingScaleImageView-xamarin-android","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Softeq%2FSubsamplingScaleImageView-xamarin-android/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Softeq%2FSubsamplingScaleImageView-xamarin-android/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Softeq%2FSubsamplingScaleImageView-xamarin-android/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Softeq","download_url":"https://codeload.github.com/Softeq/SubsamplingScaleImageView-xamarin-android/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244973775,"owners_count":20541025,"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","csharp","dotnet6","image","image-zooming","library","maui","xamarin","xamarin-android","xamarin-android-binding"],"created_at":"2024-11-29T02:29:24.032Z","updated_at":"2026-05-09T13:01:54.432Z","avatar_url":"https://github.com/Softeq.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# Subsampling Scale Image View\n\n[![Build Status](https://dev.azure.com/SofteqDevelopment/Xamarin.Binding.Libraries/_apis/build/status/SubsamplingScaleImageView%20Android%20Library/SubsamplingScaleImageView-dev?branchName=master)](https://dev.azure.com/SofteqDevelopment/Xamarin.Binding.Libraries/_build/latest?definitionId=425\u0026branchName=master) [![NuGet Badge](https://buildstats.info/nuget/SubsamplingScaleImageViewBinding)](https://www.nuget.org/packages/SubsamplingScaleImageViewBinding/)\n\nXamarin binding library for [SubsamplingScaleImageView](https://github.com/davemorrissey/subsampling-scale-image-view) Android library.\n\n---\n\nA custom image view for Android, designed for photo galleries and displaying huge images (e.g. maps and building plans) without OutOfMemoryErrors. Includes pinch to zoom, panning, rotation and animation support, and allows easy extension so you can add your own overlays and touch event detection.\n\nThe view optionally uses subsampling and tiles to support very large images - a low resolution base layer is loaded and as you zoom in, it is overlaid with smaller high resolution tiles for the visible area. This avoids holding too much data in memory. It's ideal for displaying large images while allowing you to zoom in to the high resolution details. You can disable tiling for smaller images and when displaying a bitmap object. There are some advantages and disadvantages to disabling tiling so to decide which is best, see [the original wiki](https://github.com/davemorrissey/subsampling-scale-image-view/wiki/02.-Displaying-images).\n\n## Installation\n\nNuGet:\n\n```\nInstall-Package SubsamplingScaleImageViewBinding\n```\n\nThe minimum SDK is now 14.\n\n## Usage\n\n**1)** Add the view to your layout XML.\n\n```xml\n\u003cLinearLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    android:layout_width=\"match_parent\"\n    android:layout_height=\"match_parent\" \u003e\n\n    \u003ccom.davemorrissey.labs.subscaleview.SubsamplingScaleImageView\n        android:id=\"@+id/imageView\"\n        android:layout_width=\"match_parent\"\n        android:layout_height=\"match_parent\"/\u003e\n\n\u003c/LinearLayout\u003e\n```\n\n**2)** Now, in your fragment or activity, set the image resource, asset name or file path.\n\n```cs\nvar imageView = view.FindViewById\u003cSubsamplingScaleImageView\u003e(Resource.Id.imageView);\n\nimageView.SetImage(ImageSource.ForResource(Resource.Drawable.swissroad));\n```\n\n## Integration\n\n### FFImageLoading\n\nUse FFImageLoading [custom ViewTarget declaration](https://github.com/luberda-molinet/FFImageLoading/wiki/Custom-ViewTarget):\n\n```cs\npublic class SubsamplingScaleImageViewTarget : ViewTarget\u003cSubsamplingScaleImageView\u003e\n{\n    public SubsamplingScaleImageViewTarget(SubsamplingScaleImageView imageView)\n        : base(imageView)\n    {\n    }\n\n    public override void Set(IImageLoaderTask task, SelfDisposingBitmapDrawable image,\n        bool animated)\n    {\n        var source = ImageSource.ForBitmap(image.Bitmap);\n        Control.SetImage(source);\n    }\n}\n```\n\n```cs\nvar target = new SubsamplingScaleImageViewTarget(_imageView);\n\nImageService.Instance.LoadUrl(\"image-url\").IntoAsync(target);\n```\n\n\n## About\n\nThis project is maintained by [Softeq Development Corp.](https://www.softeq.com/)\n\nWe specialize in developing mobile applications using Xamarin and native technology stack.\n\n## License\n\nSubsamplingScaleImageViewBinding library for android is released under the MIT license. See [LICENSE](LICENSE) for details.\n\nThe original SubsamplingScaleImageView project was created by Dave Morrissey under a different [license](https://github.com/davemorrissey/subsampling-scale-image-view/blob/master/LICENSE) (Apache License 2.0)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsofteq%2Fsubsamplingscaleimageview-xamarin-android","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsofteq%2Fsubsamplingscaleimageview-xamarin-android","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsofteq%2Fsubsamplingscaleimageview-xamarin-android/lists"}