{"id":19661105,"url":"https://github.com/sundeepk/asyncbackgroundviewpager","last_synced_at":"2025-06-27T10:35:02.732Z","repository":{"id":12236315,"uuid":"14847718","full_name":"SundeepK/AsyncBackgroundViewPager","owner":"SundeepK","description":"Load and display a background image to a ViewPager asynchronously, with automatic disk caching.","archived":false,"fork":false,"pushed_at":"2013-12-02T23:07:28.000Z","size":2464,"stargazers_count":6,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-28T20:46:19.013Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Java","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/SundeepK.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}},"created_at":"2013-12-01T22:45:23.000Z","updated_at":"2020-08-07T16:15:21.000Z","dependencies_parsed_at":"2022-09-24T13:25:42.620Z","dependency_job_id":null,"html_url":"https://github.com/SundeepK/AsyncBackgroundViewPager","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/SundeepK/AsyncBackgroundViewPager","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SundeepK%2FAsyncBackgroundViewPager","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SundeepK%2FAsyncBackgroundViewPager/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SundeepK%2FAsyncBackgroundViewPager/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SundeepK%2FAsyncBackgroundViewPager/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SundeepK","download_url":"https://codeload.github.com/SundeepK/AsyncBackgroundViewPager/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SundeepK%2FAsyncBackgroundViewPager/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262240042,"owners_count":23280444,"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":[],"created_at":"2024-11-11T16:06:22.818Z","updated_at":"2025-06-27T10:35:02.714Z","avatar_url":"https://github.com/SundeepK.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"AsyncBackgroundViewPager\n==============\n\nSimple way to load a large background image that spans across a ViewPager widget. Scrolling between tabs automatiacally scrolls the background for you to. It also handels disk caching so that the same images will be loaded into memory much more efficiently rather than downloading them again. It also provides a away of automatically calculating the optimal image size for you as well :). This widget makes heavy use of the [Simple Image Cache](https://github.com/SundeepK/SIC/blob/master/README.md) for code reuse. I will be commiting a version with out the SIC once it is finished.\n\n\n**Layout code**\n\nSimply define a AsyncBackgroundViewPager:\n\n  ``` xml\n\u003c?xml version=\"1.0\" encoding=\"utf-8\"?\u003e\n\n\n\u003cLinearLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    xmlns:tools=\"http://schemas.android.com/tools\"\n    android:layout_width=\"fill_parent\"\n    android:layout_height=\"wrap_content\"\n    android:background=\"#ffffffff\"\n    android:descendantFocusability=\"beforeDescendants\"\n    android:focusable=\"true\"\n    android:focusableInTouchMode=\"true\"\n    android:orientation=\"vertical\"\n    tools:context=\".MainActivity\" \u003e\n\n    \u003ccom.sun.parallaxviewpage.core.AsyncBackgroundViewPager\n        android:id=\"@+id/viewPager\"\n        android:layout_width=\"fill_parent\"\n        android:layout_height=\"fill_parent\"\n        android:background=\"#cc000000\"\n        android:scrollbarSize=\"1dp\" \u003e\n\n        \u003candroid.support.v4.view.PagerTitleStrip\n            android:id=\"@+id/pager_title_strip\"\n            android:layout_width=\"match_parent\"\n            android:layout_height=\"wrap_content\"\n            android:layout_gravity=\"top\"\n            android:background=\"#33b5e5\"\n            android:paddingBottom=\"4dp\"\n            android:paddingTop=\"4dp\"\n            android:textColor=\"#fff\" /\u003e\n    \u003c/com.sun.parallaxviewpage.core.AsyncBackgroundViewPager\u003e\n\n\u003c/LinearLayout\u003e\n\n  ```\n  \n ``` java\n@Override\n\tprotected void onCreate(Bundle savedInstanceState) {\n\t\tsuper.onCreate(savedInstanceState);\n\t    setContentView(R.layout.main);\n\t    Button but = (Button) findViewById(R.id.buttonChangeImage);\n\t    \n\t\t_viewPage = (AsyncBackgroundViewPager) findViewById(R.id.viewPager);\n\t\t_viewPage.setAdapter(new TestAdapter(getSupportFragmentManager()));\n\t\t_viewPage.setExternalStorageDir(\"/storage/sdcard0/Pictures/test\", 5);\n\t\t\t\ttry {\n\t\t\t_viewPage.loadImage(\n\t\t\t\t\tnew URI(\"someurlToAImage.com/image.jpeg\")\n\t\t\t\t\t, 1, false);\n\t\t} catch (URISyntaxException e) {\n\t\t\te.printStackTrace();\n\t\t}\n\t}\n```\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsundeepk%2Fasyncbackgroundviewpager","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsundeepk%2Fasyncbackgroundviewpager","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsundeepk%2Fasyncbackgroundviewpager/lists"}