返回排行榜

ren93/RecyclerBanner

Java

用RecyclerView实现无限轮播图,有普通版和3d版

recyclerviewbanner
Star 增长趋势
Star
1.6k
Forks
310
周增长
Issues
26
5001k1.5k
2017年11月2020年9月2023年8月2026年7月
制品库Mavengit clone https://github.com/ren93/RecyclerBanner.git
README

RecyclerBanner

介绍

RecyclerBanner是一个利用RecycleView实现轮播图的自定义控件。

这里有相关博客介绍!

属性

属性名称 方法 意义 类型 默认值
app:showIndicator setShowIndicator(boolean showIndicator) 是否显示指示器 boolean true
app:interval setAutoPlayDuration(int autoPlayDuration) 轮播时间间隔 int 4000
app:isAutoPlaying setAutoPlaying(boolean isAutoPlaying) 是否开启自动轮播 boolean true
app:orientation setOrientation(int orientation) 轮播图方向 enum horizontal
app:itemSpace setItemSpace(int itemSpace) 图片间距 int 20
app:centerScale setCenterScale(float centerScale) 当前图片缩放比列 float 1.2
app:moveSpeed setMoveSpeed(float moveSpeed) 滚动速度,越大越快 float 1.0

效果如下图:

使用方法

设置一个带数据的RecyclerView.Adapter即可。

   <com.example.library.banner.BannerLayout
        android:id="@+id/recycler"
        android:layout_width="match_parent"
        android:layout_height="200dp"
        app:autoPlaying="true"
        app:centerScale="1.3"
        app:itemSpace="20"
        app:moveSpeed="1.8"/>

BannerLayout  recyclerBanner =  findViewById(R.id.recycler);
bannerVertical =  findViewById(R.id.recycler_ver);

  List<String> list = new ArrayList<>();
        list.add("http://img0.imgtn.bdimg.com/it/u=1352823040,1166166164&fm=27&gp=0.jpg");
        list.add("http://img3.imgtn.bdimg.com/it/u=2293177440,3125900197&fm=27&gp=0.jpg");
        list.add("http://img3.imgtn.bdimg.com/it/u=3967183915,4078698000&fm=27&gp=0.jpg");
        list.add("http://img0.imgtn.bdimg.com/it/u=3184221534,2238244948&fm=27&gp=0.jpg");
        list.add("http://img4.imgtn.bdimg.com/it/u=1794621527,1964098559&fm=27&gp=0.jpg");
        list.add("http://img4.imgtn.bdimg.com/it/u=1243617734,335916716&fm=27&gp=0.jpg");
WebBannerAdapter webBannerAdapter=new WebBannerAdapter(this,list);
webBannerAdapter.setOnBannerItemClickListener(new BannerLayout.OnBannerItemClickListener() {
            @Override
            public void onItemClick(int position) {
                Toast.makeText(MainActivity.this, "点击了第  " + position+"  项", Toast.LENGTH_SHORT).show();
            }
        });
recyclerBanner.setAdapter(webBannerAdapter);

License

 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.

致谢

ViewPagerLayoutManager 使用了部分代码

相关仓库
CymChad/BaseRecyclerViewAdapterHelper

BRVAH:Powerful and flexible RecyclerAdapter

KotlinMIT Licenserecyclerviewrecyclerview-adapter
recyclerview.org
24.6k5.2k
wasabeef/recyclerview-animators

An Android Animation library which easily add itemanimator to RecyclerView items.

KotlinApache License 2.0androidandroid-library
11.5k2k
cymcsg/UltimateRecyclerView

A RecyclerView(advanced and flexible version of ListView in Android) with refreshing,loading more,animation and many other features.

JavaMavenApache License 2.0javarecyclerview
7.2k1.4k
getActivity/AndroidProject

Android 技术中台,但愿人长久,搬砖不再有

JavaMavenApache License 2.0androidmvp
6.9k1.4k
yarolegovich/DiscreteScrollView

A scrollable list of items that centers the current element and provides easy-to-use APIs for cool item animations.

JavaMavenandroidview
5.8k784
drakeet/MultiType

Flexible multiple types for Android RecyclerView.

KotlinApache License 2.0android-libraryrecyclerview
5.8k747
yanzhenjie/SwipeRecyclerView

:melon: RecyclerView侧滑菜单,Item拖拽,滑动删除Item,自动加载更多,HeaderView,FooterView,Item分组黏贴。

JavaMavenApache License 2.0swipe-menuswipe-delete
github.com/yanzhenjie/SwipeRecyclerView
5.7k1.1k
TommyLemon/Android-ZBLibrary

🔥 Android MVP 快速开发框架,做国内 「示例最全面」「注释最详细」「使用最简单」「代码最严谨」的 Android 开源 UI 框架。 🔥 An Android MVP Framework with many demos, detailed documents, simple usages and strict codes.

JavaMavenApache License 2.0zxingokhttp
5.6k1.4k
Flipkart/recyclerlistview

High performance listview for React Native and web!

TypeScriptnpmApache License 2.0react-nativerecyclerview
5.4k437
h6ah4i/android-advancedrecyclerview

RecyclerView extension library which provides advanced features. (ex. Google's Inbox app like swiping, Play Music app like drag and drop sorting)

JavaMavenApache License 2.0androidrecyclerview
advancedrecyclerview.h6ah4i.com
5.3k849
XRecyclerView/XRecyclerView

A RecyclerView that implements pullrefresh and loadingmore featrues.you can use it like a standard RecyclerView

JavaMavenrecyclerviewfeatrue
5.3k1.2k
rubensousa/GravitySnapHelper

A SnapHelper that snaps a RecyclerView to an edge.

JavaMavenApache License 2.0recyclerviewsnapping
5k617