All Projects → OCNYang → Pagetransformerhelp

OCNYang / Pagetransformerhelp

Licence: apache-2.0
👍 A PageTransformer library for Android ViewPager,have some Banner styles. ViewPager 实现轮播图、实现卡片切换。

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to Pagetransformerhelp

Cardslideview
一行代码实现ViewPager卡片效果,比ViewPager2更强大,底层同样是RecyclerView
Stars: ✭ 301 (-37.03%)
Mutual labels:  viewpager, banner, cardview
SimpleSlider
A simple slider allows you to easily use.
Stars: ✭ 78 (-83.68%)
Mutual labels:  banner, viewpager
ViewWorld
自定义View合集,展示各种自定义View/控件。项目包含了自定义Banner轮播图控件,自定义验证码输入框,自定义TabLayout等控件,持续更新中😉😉😉
Stars: ✭ 94 (-80.33%)
Mutual labels:  banner, viewpager
LoopBanner
一个简单好用且超轻量的自动轮播控件,支持UI风格完全自定义
Stars: ✭ 56 (-88.28%)
Mutual labels:  banner, viewpager
Xbanner
🔥【图片轮播】支持图片无限轮播,支持AndroidX、自定义指示点、显示提示文字、切换动画、自定义布局,一屏显示多个等功能
Stars: ✭ 1,734 (+262.76%)
Mutual labels:  viewpager, banner
Banner
🔥🔥🔥Banner 2.0 来了!Android广告图片轮播控件,内部基于ViewPager2实现,Indicator和UI都可以自定义。
Stars: ✭ 11,682 (+2343.93%)
Mutual labels:  viewpager, banner
AutoScrollLoopViewPager
AutoScrollLoopViewPager, 无限轮播的Banner
Stars: ✭ 46 (-90.38%)
Mutual labels:  banner, viewpager
Viewpagerhelper
这个一个 viewpager/viewpager2工具类,能够帮你快速实现导航栏轮播图,app引导页,viewpager/viewpager2 + fragment;内置多种tab指示器,让你告别 viewpager 的繁琐操作,专注逻辑功能
Stars: ✭ 957 (+100.21%)
Mutual labels:  viewpager, banner
ECardFlow
🍭A custom ViewPager for multiple card flow system. && A layout which provide beautiful background effects for ViewPager.
Stars: ✭ 47 (-90.17%)
Mutual labels:  viewpager, cardview
FastBanner
🔥快速轮播图,支持自定义布局和使用自有图片显示组件
Stars: ✭ 27 (-94.35%)
Mutual labels:  banner, viewpager
Banner
🔥🔥ViewPager,ViewPager2无限轮播功能。自定义Indicator,支持一屏三页,支持仿魅族banner效果。极其简单的使用方式
Stars: ✭ 393 (-17.78%)
Mutual labels:  viewpager, banner
Loopviewpagerlayout
☺无限轮播ViewPagerLayout 广告栏 banner 多种滑动的样式 使用API简单明了
Stars: ✭ 100 (-79.08%)
Mutual labels:  viewpager, banner
Banner
Android Viewpager rotation control, application guide page controls, support vertical, horizontal cycle scrolling, extended from view support animation, indicator extension and so on;Android viewpager轮播图控件、app引导页控件,支持垂直、水平循环滚动,扩展自viewpager 支持动画,指示器扩展等。
Stars: ✭ 96 (-79.92%)
Mutual labels:  viewpager, banner
Bannerviewpager
🚀 An awesome banner view for Android,Based on ViewPager2. 这可能是全网最好用的ViewPager轮播图。简单、高效,一行代码实现循环轮播,一屏三页任意变,指示器样式任你挑。
Stars: ✭ 2,603 (+444.56%)
Mutual labels:  viewpager, banner
Bannerlayout
Support unlimited picture rotation BannerLayout, the minimum implementation of the code banner
Stars: ✭ 92 (-80.75%)
Mutual labels:  viewpager, banner
DynamicViewPagerDemo
ViewPager单屏显示多页面,动画效果
Stars: ✭ 49 (-89.75%)
Mutual labels:  viewpager, cardview
Banner
轮播图控件,支持自定义布局,支持两端缩进,类似卡片,支持无限循环和多种主题,可以灵活设置轮播样式、动画、轮播和切换时间、位置、图片加载框架等!
Stars: ✭ 512 (+7.11%)
Mutual labels:  viewpager, banner
Banner
布局可xml定制任意布局的banner控件,不仅局限于图片轮播哦,轻松解决各种需求。Android广告图片轮播控件,支持无限循环和多种主题,可以灵活设置轮播样式、动画、轮播和切换时间、位置、图片加载框架 以及视频轮播等!
Stars: ✭ 35 (-92.68%)
Mutual labels:  banner, viewpager
Bannerview
横幅广告图片轮播控件
Stars: ✭ 290 (-39.33%)
Mutual labels:  viewpager, banner
Viewpagercards
ViewPager cards inspired by Duolingo
Stars: ✭ 4,040 (+745.19%)
Mutual labels:  viewpager, cardview

PageTransformerHelp

GitHub issues  GitHub forks  GitHub stars

This is a PageTransformer library for Android ViewPager;There are many custom PageTransformer styles.Be able to help you when you use ViewPager.

Version Code

关于 ViewPager 的各种用法详解教程

Download the demo apk

Styles

Banner Style

Style Name Demo Pic
AccordionTransformer AccordionTransformer
BackgroundToForegroundTransformer BackgroundToForegroundTransformer
CubeInTransformer CubeInTransformer
CubeOutTransformer CubeOutTransformer
DepthPageTransformer DepthPageTransformer
FlipHorizontalTransformer FlipHorizontalTransformer
FlipVerticalTransformer FlipVerticalTransformer
ForegroundToBackgroundTransformer ForegroundToBackgroundTransformer
ParallaxTransformer ParallaxTransformer
RotateDownTransformer RotateDownTransformer
RotateUpTransformer RotateUpTransformer
ScaleInOutTransformer ScaleInOutTransformer
StackTransformer StackTransformer
TabletTransformer TabletTransformer
ZoomInTransformer ZoomInTransformer
ZoomOutSlideTransformer ZoomOutSlideTransformer
ZoomOutTranformer ZoomOutTranformer

Card Style

Style Name Demo Pic
AlphaAndScalePageTransformer AlphaAndScalePageTransformer
AlphaPageTransformer AlphaPageTransformer
CascadingPageTransformer CascadingPageTransformer
RotateDownPageTransformer RotateDownPageTransformer

Download

You can download a jar from GitHub's releses page.

Or use Gradle:
Step 1. Add it in your root build.gradle at the end of repositories

allprojects {
	repositories {
		...
		maven { url 'https://jitpack.io' }
	}
}

Step 2. Add the dependency

dependencies {
    compile 'com.github.OCNYang:PageTransformerHelp:v1.0.1'
}

Or Maven:
Step 1.

<repositories>
	<repository>
	    <id>jitpack.io</id>
	    <url>https://jitpack.io</url>
	</repository>
</repositories>

Step 2.

<dependency>
    <groupId>com.github.OCNYang</groupId>
    <artifactId>PageTransformerHelp</artifactId>
    <version>v1.0.1</version>
</dependency>

How do I use PageTransformerHelp?

Use Banner Style

Add your ViewPager in XML;And then:

...
mViewPager = ((ViewPager) findViewById(R.id.viewPager));
mViewPager.setPageTransformer(true,new ParallaxTransformer());
...

If you want a ViewPager with Title and Indicator,We recommend that you customize a ViewPager.
Here is an BannerViewPager for your reference, but we do not recommend that you use it directly unless it meets your requirements.
PageTransformerHelp 内提供了一种带有标题和指示器的 BannerViewPager,这里只是供大家根据需求自定义 ViewPager 时作为参考(大家只需要复制里面的代码,修改一下标题和指示器的布局文件即可)。不建议直接使用,如果你愿意也可以直接使用。

Use BannerViewPager

Add BannerViewPager in your XML;And then:

mBannerViewPager = ((BannerViewPager) findViewById(R.id.bannerViewPager));
mBannerViewPager
	.setData(List<BannerItemBean>,//set data
	    new ImageLoaderInterface() {
	        @Override
	        public void displayImage(Context context, Object imgPath, ImageView imageView) {
                //Set your own image loading method according to your needs
                //Glide.with(context).load(imgPath).into(imageView);
	        }
    })
    .setPageTransformer(new ParallaxTransformer())
    .setAutoPlay(false)
    .setOnBannerItemClickListener(new BannerViewPager.OnBannerItemClickListener() {
        @Override
        public void OnClickLister(View view, int currentItem) {
            ...
        }
    })
    .setHaveTitle(true);//set the title show or hide

Use Card Style

Add ViewPager in XML:

<LinearLayout
    ...
    android:clipChildren="false"
    ...>
	...
	<android.support.v4.view.ViewPager
        ...
        android:layout_marginLeft="80dp"
        android:layout_marginRight="80dp"
        android:clipChildren="false"
        .../>
	...
</LinearLayout>

You should set android:clipChildren="false" for your ViewPager and ViewPager's parent;And set layout_marginLeftlayout_marginRightfor your ViewPager.
And then set setPageMarginsetPageTransformer in the code:

...
mViewPager = ((ViewPager) findViewById(R.id.cardViewPager));
mViewPager.setOffscreenPageLimit(3);
mViewPager.setPageMargin(40);
mViewPager.setPageTransformer(true,new AlphaPageTransformer());
mViewPager.setAdapter(...
...

In the end

If you have some other nice PageTransformer, you can create a pull request. If you find some bugs,tell me through create an issue.

Like it please give me a star.

如果你有更好的自定义 PageTransformer 可以提交给我;
同时如果你喜欢这个项目,欢迎 Star。

关于这篇文章更详细的教程,请看:ViewPager 超详解:玩出十八般花样

Thanks

LICENSE

Copyright 2017 https://github.com/OCNYang | OCN.Yang

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].