一个很Nice的Android Banner轮播图库

这篇博客介绍了一个在Android项目中实现轮播图的简单方法,推荐了一个名为BannerViewPager的优秀开源库。博主详细讲解了从添加Gradle依赖、布局设计、Adapter的编写到在Activity中创建和配置轮播图的步骤,展示了如何创建一个自动无限轮播的ViewPager,还提及该库支持更多自定义配置和指示器样式。
摘要由CSDN通过智能技术生成

Android萌新一枚,最近项目中有一个轮播图的需求,网上搜了很多资料,也看了多开源库,但不是bug多就是库不维护。后来在GitHub上找到一个很棒的轮播图–BannerViewPager库推荐个大家。

它的使用方法很简单,也是我看过其他库里边使用最简单的一个。

1.gradle中添加依赖

在项目的root build.gradle中添加如下配置,这个配置是需要添加到项目根目录下的gradel文件中的。

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

然后在项目app目录下的gradle中添加BannerViewPager的依赖:

implementation 'com.github.zhpanvip:BannerViewPager:3.4.0'

然后在Activity的布局文件中添加BannerViewPager:

    <com.zhpan.bannerview.BannerViewPager
            android:id="@+id/banner_view"
            android:layout_width="match_parent"
            android:layout_margin="10dp"
            android:layout_height="160dp" />

2.Banner的页面布局

这个是我们Banner的item页面布局文件,Item的布局必须是"match_parent",否则会抛出一个IllegalStateException.

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <ImageView
        android:id
  • 11
    点赞
  • 41
    收藏
    觉得还不错? 一键收藏
  • 12
    评论
很抱歉,我是一名语言模型,没有编写代码的能力。不过我可以提供一个简单的好友列表的demo,您可以参考一下: 1. 在layout文件夹中新建一个xml文件,取名为list_item_friend.xml。代码如下: ``` <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_content" android:padding="10dp"> <ImageView android:id="@+id/avatar" android:layout_width="60dp" android:layout_height="60dp" android:src="@drawable/avatar_default" android:layout_centerVertical="true"/> <TextView android:id="@+id/name" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_toRightOf="@id/avatar" android:layout_marginLeft="10dp" android:textSize="20sp" android:layout_alignParentTop="true"/> <TextView android:id="@+id/message" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_toRightOf="@id/avatar" android:layout_marginLeft="10dp" android:textSize="14sp" android:layout_below="@id/name"/> </RelativeLayout> ``` 2. 新建一个MainActivity,并在onCreate()方法中添加以下代码: ``` public class MainActivity extends AppCompatActivity { private ListView listView; private FriendListAdapter adapter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); listView = findViewById(R.id.friend_list); adapter = new FriendListAdapter(this, getFriendList()); listView.setAdapter(adapter); } private List<Friend> getFriendList() { List<Friend> friendList = new ArrayList<>(); friendList.add(new Friend("Alice", "Hello!")); friendList.add(new Friend("Bob", "Hi!")); friendList.add(new Friend("Carol", "How are you?")); friendList.add(new Friend("David", "Nice to meet you!")); friendList.add(new Friend("Emma", "I'm fine, thank you.")); return friendList; } } ``` 3. 新建一个Friend类,在里面定义好友的基本信息: ``` public class Friend { private String name; private String message; public Friend(String name, String message) { this.name = name; this.message = message; } public String getName() { return name; } public String getMessage() { return message; } } ``` 4. 新建一个FriendListAdapter类,继承自BaseAdapter,并在里面实现getView()方法: ``` public class FriendListAdapter extends BaseAdapter { private List<Friend> friendList; private LayoutInflater inflater; public FriendListAdapter(Context context, List<Friend> friendList) { this.friendList = friendList; inflater = LayoutInflater.from(context); } @Override public int getCount() { return friendList.size(); } @Override public Object getItem(int position) { return friendList.get(position); } @Override public long getItemId(int position) { return position; } @Override public View getView(int position, View convertView, ViewGroup parent) { ViewHolder holder = null; if (convertView == null) { convertView = inflater.inflate(R.layout.list_item_friend, parent, false); holder = new ViewHolder(); holder.avatar = convertView.findViewById(R.id.avatar); holder.name = convertView.findViewById(R.id.name); holder.message = convertView.findViewById(R.id.message); convertView.setTag(holder); } else { holder = (ViewHolder) convertView.getTag(); } holder.name.setText(friendList.get(position).getName()); holder.message.setText(friendList.get(position).getMessage()); return convertView; } class ViewHolder { ImageView avatar; TextView name; TextView message; } } ``` 5. 新建一个drawable文件夹,在里面添加一个名为avatar_default的图片,作为好友的默认头像。 6. 运行程序,就能看到一个简单的好友列表了。 希望这个demo能够对您有所帮助!
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值