All Projects → xyzlf → AutoPlayViewPager

xyzlf / AutoPlayViewPager

Licence: other
仿京东、淘宝,自动轮播图。Auto Play ViewPager。

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to AutoPlayViewPager

PagerSlidingTabStrip
An interactive indicator to navigate between the different pages of a ViewPager
Stars: ✭ 2,194 (+14526.67%)
Mutual labels:  viewpager
UnderlinePageIndicator
Paging indicator widget compatible with the ViewPager
Stars: ✭ 65 (+333.33%)
Mutual labels:  viewpager
LoopBanner
一个简单好用且超轻量的自动轮播控件,支持UI风格完全自定义
Stars: ✭ 56 (+273.33%)
Mutual labels:  viewpager
carousel-viewpager
Beautiful carousel layout implemented using ViewPager
Stars: ✭ 17 (+13.33%)
Mutual labels:  viewpager
DynamicViewPagerDemo
ViewPager单屏显示多页面,动画效果
Stars: ✭ 49 (+226.67%)
Mutual labels:  viewpager
FullScreenCardViewPager Android
Endless full-screen card ViewPager inspired by apple iBook for Android
Stars: ✭ 134 (+793.33%)
Mutual labels:  viewpager
Test Mogu View
仿蘑菇街欢迎页
Stars: ✭ 54 (+260%)
Mutual labels:  viewpager
Walk-Through-Screen
This library provides easy ways to add onboarding or pager screens with different animation and indicators.
Stars: ✭ 31 (+106.67%)
Mutual labels:  viewpager
react-native-viewpager-carousel
a flexible viewpager library with carousel functionality
Stars: ✭ 39 (+160%)
Mutual labels:  viewpager
photoselect
No description or website provided.
Stars: ✭ 39 (+160%)
Mutual labels:  viewpager
stepper-indicator
Step indicator for onboarding or simple viewpager
Stars: ✭ 180 (+1100%)
Mutual labels:  viewpager
Adsorbent
Adsorbent of RecyclerView , RecyclerView吸顶
Stars: ✭ 25 (+66.67%)
Mutual labels:  viewpager
react-native-paper-tabs
Smooth and fast cross platform Material Design Tabs for React Native Paper
Stars: ✭ 112 (+646.67%)
Mutual labels:  viewpager
OnboardingDemo
Onboarding Example. Uses ViewPager's PageTransformer to animate elements.
Stars: ✭ 44 (+193.33%)
Mutual labels:  viewpager
Banner
布局可xml定制任意布局的banner控件,不仅局限于图片轮播哦,轻松解决各种需求。Android广告图片轮播控件,支持无限循环和多种主题,可以灵活设置轮播样式、动画、轮播和切换时间、位置、图片加载框架 以及视频轮播等!
Stars: ✭ 35 (+133.33%)
Mutual labels:  viewpager
IndicatorView
IndicatorView Library For Android
Stars: ✭ 41 (+173.33%)
Mutual labels:  viewpager
multilayout
一个可以支持自动将分类标签拆分多行Tab标签的Layout
Stars: ✭ 14 (-6.67%)
Mutual labels:  viewpager
Android-Universal-ViewPager-Indicator
Android Universal ViewPager Indicator
Stars: ✭ 41 (+173.33%)
Mutual labels:  viewpager
AutoImageFlipper
Auto Scrolling Image Pager with Pager Indicator and Text
Stars: ✭ 106 (+606.67%)
Mutual labels:  viewpager
AutoScrollLoopViewPager
AutoScrollLoopViewPager, 无限轮播的Banner
Stars: ✭ 46 (+206.67%)
Mutual labels:  viewpager

AutoPlayViewPager

仿京东、淘宝,横向自动轮播图。Auto Play ViewPager。

效果

Gradle

//使用 autoplay viewpager
compile ('com.xyzlf.autoplay.viewpager:viewpager:0.0.5') {
    exclude group: 'com.android.support', module: 'appcompat-v7'
}

使用方式

1、在xml中使用,如下:

<!-- 使用默认颜色,大小,间距 -->
<com.xyzlf.autoplay.viewpager.CustomerBanner
    android:id="@+id/banner"
    android:layout_width="match_parent"
    android:layout_height="150dp"/>

<!--自定义颜色,大小,间距-->
<com.xyzlf.autoplay.viewpager.CustomerBanner
    android:id="@+id/banner"
    android:layout_width="match_parent"
    android:layout_height="150dp"
    custom:indicator_radius="3dp"
    custom:indicator_span="16dp"
    custom:indicator_selected_color="#ff0000"
    custom:indicator_unselected_color="#00ff00"
    custom:indicator_bottommargin="20dp"/>

2、代码中使用:

List<Integer> list = new ArrayList<>();
list.add(R.drawable.pic_1);
list.add(R.drawable.pic_2);
list.add(R.drawable.pic_3);
list.add(R.drawable.pic_4);
    
CustomerBanner banner = (CustomerBanner) findViewById(R.id.banner);
banner.setAdapter(new AutoPlayPagerAdapter(list));

3、Adapter需要继承 AutoPagerAdapter,完整Adapter代码如下:

public class AutoPlayPagerAdapter extends AutoPagerAdapter {

    private List<Integer> list;

    public AutoPlayPagerAdapter(List<Integer> list) {
        this.list = list;
    }

    @Override
    public View getView(LayoutInflater layoutInflater, int position) {
        ImageView imageView = new ImageView(getApplicationContext());
        ViewGroup.LayoutParams params = new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT);
        imageView.setLayoutParams(params);
        int resId = list.get(getPositionForIndicator(position));
        imageView.setImageDrawable(ContextCompat.getDrawable(MainActivity.this, resId));
        return imageView;
    }

    @Override
    public int getDataCount() {
        return list == null ? 0 : list.size();
    }
}

可以下载Demo看看,代码是最好的老师。

关于我

有任何使用问题,可以给我发邮件:

Author:张利峰

E-mail:[email protected]

License

Copyright(c) 2016 xyzlf Open Source Project

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].