{"id":13789780,"url":"https://aweiloveandroid.github.io/My3DViewPager/","last_synced_at":"2025-05-12T07:31:02.700Z","repository":{"id":110403806,"uuid":"117994870","full_name":"AweiLoveAndroid/My3DViewPager","owner":"AweiLoveAndroid","description":"自定义ViewPager实现3D画廊效果，本库不再管理，已转移到 https://github.com/AweiLoveAndroid/AwesomeViewPager","archived":true,"fork":false,"pushed_at":"2019-05-16T04:44:01.000Z","size":3900,"stargazers_count":8,"open_issues_count":0,"forks_count":4,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-11-18T04:34:50.604Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Java","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/AweiLoveAndroid.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}},"created_at":"2018-01-18T14:40:34.000Z","updated_at":"2023-09-24T07:54:11.000Z","dependencies_parsed_at":"2023-03-10T15:15:14.874Z","dependency_job_id":null,"html_url":"https://github.com/AweiLoveAndroid/My3DViewPager","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AweiLoveAndroid%2FMy3DViewPager","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AweiLoveAndroid%2FMy3DViewPager/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AweiLoveAndroid%2FMy3DViewPager/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AweiLoveAndroid%2FMy3DViewPager/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AweiLoveAndroid","download_url":"https://codeload.github.com/AweiLoveAndroid/My3DViewPager/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253695054,"owners_count":21948806,"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-08-03T22:00:33.015Z","updated_at":"2025-05-12T07:31:02.086Z","avatar_url":"https://github.com/AweiLoveAndroid.png","language":"Java","funding_links":[],"categories":["API 文档："],"sub_categories":[],"readme":"# My3DViewPager\n\n### 介绍：\n\n\u003e 自定义ViewPager实现3D画廊效果\n\n----\n\n### 更新记录\n\n2019.05.15\n * 1.删掉MyPagerAdapter，换成了NetPagerAdapter类。\n * 2.新增网络图片Api\n * 3.使用Glide加载网络图片\n * 4.保留原有的加载本地图片功能，并封装在NetPagerAdapter类中，便于调用。\n\n2018.1.18\n * 1.MyPagerAdapter类是ViewPager适配器，封装了使用AsyncTask异步加载本地图片，同时使用BitmapFactory处理图片，使用LruCache做缓存处理。\n * 2.RotationPageTransformer类是核心类，用于实现3D画廊效果。\n\n----\n\n### 相关API说明\n\n\n\u003e 构造函数：\n\napi|介绍|示例\n----|----|----\nNetPagerAdapter(String[] urlData, Activity context)|参数1：网络图片url构成的String数组|new NetPagerAdapter(new String[]{\"xxx\",\"xxx\"}, MainActivity.this);\nNetPagerAdapter(List\u003cString\u003e urlData2, Activity context)|网络图片url构成的List集合|new NetPagerAdapter(new ArrayList(){add(\"xxx\");add(\"xxx\");}, MainActivity.this);\nNetPagerAdapter(int[] bitmapIds, Activity context)|参数1：本地图片资源id构成的数组|new NetPagerAdapter(new int[]{R.mipmap.ic1, R.mipmap.ic2},MainActivity.this);\n\n\u003e 普通方法\n\napi|介绍|示例\n----|----|----\nRequestBuilder initRequestBuilder(Activity activity)|初始化RequestBuilder| initRequestBuilder(mContext);\nvoid loadArrayPictures(int position,String[] urlData,ImageView imageView)|加载数组url图片资源|loadArrayPictures(position, mUrlData, imageView);\nvoidl oadListUrlPictures(int position, List\u003cString\u003e urlData,ImageView imageView)|加载List url图片资源|loadListUrlPictures(position, mUrlData2, imageView);\nvoid loadArrayLocalPictures(int position,int[] localData,ImageView imageView)|加载本地图片资源|loadArrayLocalPictures(position, mBitmapIds, imageView);\n\n----\n\n### 更多详细文档请点击：  **[https://aweiloveandroid.github.io/My3DViewPager/](https://aweiloveandroid.github.io/My3DViewPager/)**\n\n----\n\n### 示例代码如下：\n\n```\npublic class MainActivity extends AppCompatActivity  {\n\n    ArrayList\u003cString\u003e urlStringListData = new ArrayList\u003cString\u003e() {\n        {\n            add(\"http://pic1.win4000.com/pic/1/8f/a0a8710697.jpg\");\n            add(\"http://g3.hexunimg.cn/2014-11-27/170863659.jpg\");\n            add(\"http://img2.ph.126.net/SlLKQng7FwONu4Gc7840dw==/6631757159491304852.jpg\");\n            add(\"http://img2.imgtn.bdimg.com/it/u=2140906724,1420988892\u0026fm=26\u0026gp=0.jpg\");\n            add(\"http://www.sinaimg.cn/dy/slidenews/21_img/2013_39/2236_2506045_412924.jpg\");\n            add(\"http://img.dwstatic.com/lol/1510/309952330698/1445997581880.jpg\");\n            add(\"http://ztd00.photos.bdimg.com/ztd/w=700;q=50/sign=0b483be65de736d158138e08ab6b3eff/78310a55b319ebc4040303a38b26cffc1e171694.jpg\");\n            add(\"http://img.361games.com/file/tu/meinv/ruk1cgaqnlq.jpg\");\n            add(\"http://g1.hexunimg.cn/2014-11-27/170863665.jpg\");\n            add(\"http://img5.imgtn.bdimg.com/it/u=2418626602,1456190023\u0026fm=26\u0026gp=0.jpg\");\n            add(\"http://g0.hexunimg.cn/2014-11-27/170863681.jpg\");\n            add(\"http://ztd00.photos.bdimg.com/ztd/w=700;q=50/sign=8f58d3d74aa7d933bfa8e6739d70a02e/11385343fbf2b21113f86c8dc28065380dd78e1b.jpg\");\n            add(\"http://pic1.win4000.com/pic/9/c6/159c700815.jpg\");\n        }\n    };\n\n    private ViewPager mViewPager;\n    private NetPagerAdapter mNetPagerAdapter;\n\n    @Override\n    protected void onCreate(Bundle savedInstanceState) {\n        super.onCreate(savedInstanceState);\n        setContentView(R.layout.activity_main);\n        // NetPagerAdapter加载List集合图片资源\n        initViews();\n\n    }\n\t\n\t/**\n\t *   加载List url图片资源\n\t */\n\tprivate void initViews(){\n        mViewPager = (ViewPager) findViewById(R.id.viewpager);\n        mNetPagerAdapter = new NetPagerAdapter(urlStringListData, MainActivity.this);\n        mViewPager.setAdapter(mNetPagerAdapter);\n        mViewPager.setPageTransformer(true, new RotationPageTransformer());\n        mViewPager.setOffscreenPageLimit(2);//设置预加载的数量，这里设置了2,会预加载中心item左边两个Item和右边两个Item\n\t\tmViewPager.setPageMargin(5);//设置两个Page之间的距离\n    }\n}\n```\n\n----\n\n### 示例图如下所示：\n\n![示例图](https://github.com/AweiLoveAndroid/My3DViewPager/blob/master/pic/logo.gif?raw=true)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/aweiloveandroid.github.io%2FMy3DViewPager%2F","html_url":"https://awesome.ecosyste.ms/projects/aweiloveandroid.github.io%2FMy3DViewPager%2F","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/aweiloveandroid.github.io%2FMy3DViewPager%2F/lists"}